一种酒店公共网络的即插即用接入方法
技术领域
本发明涉及一种公网IP地址管理和分配问题,特别是在公网地址相对短缺的酒店公共网络环境下的公网IP地址管理和分配、即插即用接入问题。
背景技术
由于信息化的快速发展,酒店客人普遍需要访问中Internet,因此酒店公共网络已经成为了酒店的信息化标配系统。酒店公共网络内传统的接入方式是启用DHCP,用户接入到酒店公共网络时,通过DHCP方式可以自动获得IP地址,以及子网掩码,DNS和默认网关IP地址等必要信息,之后就用户可以通过酒店公共网络的路由器或防火墙等三层设备访问公众Internet。
实际上酒店客人的电脑的IP设置非常多样性的,多数用户的电脑是设置为DHCP方式的,但也有少数是固定IP地址配置的。比如有的企业为了IT系统安全以及统一维护策略考虑,除了设置固定IP,甚至还通过设置特殊的桌面安全策略禁止员工自行变更IP地址配置。再比如有的用户在某一个办公环境因为工作需要设置了固定IP地址,出差到酒店后,忘记将IP配置更改为DHCP方式,或者不知道怎么设置DHCP。客人固定IP地址与酒店的DHCP网络的掩码,DNS,默认网关IP完全匹配概率是极小的,因此配置固定IP地址的客人入住到要求使用DHCP方式上网的酒店后,基本的IP地址接入都无法完成,就会发生上网故障。
除了上述的固定IP地址配置造成的接入问题,客人最基本的网络应用,包括WEB浏览应用,以及邮件应用也可能在纯粹的DHCP接入环境中发生问题。对于WEB浏览,客人浏览器可能因为企业环境的特殊要求配置了企业内网的HTTP代理服务器,那么电脑移动到酒店公共网络环境时,原先配置的企业内网HTTP代理服务器不可达,就会造成WEB浏览故障。对于邮件应用,可能因为国内或国外电信运营商的的垃圾邮件策略问题,造成一些国外客人邮件客户端软件配置的SMTP服务器不可达,那么就会造成邮件无法发送的问题。
综上所述,单纯的DHCP接入,无法全面地解决酒店客人的固定IP地址用户的网络接入问题,以及用户基本应用层面的的WEB浏览和邮件业务问题。
本发明中相关名词解释:
HSIA(High Speed Internet Access),特指酒店行业的高速上网系统,能够实现酒店住店客人和非住店客人在酒店的公共有线/无线网络接入上网,认证和计费功能。HSIA通常包含客房智能宽带接入网关,和后台认证/计费系统两部分,也可以是二者功能合一的一个整体软硬件系统。AMTT的客房智能宽带接入网关产品命名为eFlowPnPGW,后台认证/计费产品命名为eFlow HBMS,eFlow PnPGW与eFlow HBMS使用标准RADIUS协议进行通信。
ARP(Address Resolution Protocol),是标准的局域网地址解析协议。位于局域网内同一个广播域的IP终端之间相互通信时,必须要通过事先通过ARP来获得对方的MAC地址。
私网地址,特指RFC 1918规定的只能在企业或者组织的内部网络中为电脑和通信设备配置的,而不能用于公众Internet路由的IPv4地址。RFC 1918规定的私网地址总共包含三段子网,分别是10.0.0.0~10.255.255.255,172.16.0.0~172.31.255.255,192.168.0.0~192.168.255.255。配置私网地址的IPv4终端访问公共Internet时候必须经过NAT。
NAT(Network Address Translation),是一种IPv4的地址翻译技术,通常配置在企业网络的出口路由器或防火墙或其它三层设备上,完成企业内网和公网之间的IPv4地址翻译,使得企业网内部的用户可以共享一个或者几个IP地址访问Internet。
DHCP(Dynamic Host Configuration Protocol),动态主机配置协议。用于IP智能终端(包括PC,智能手机,平板电脑等)接入局域网时能够自动获得IP地址,掩码,默认路由,DNS等必要的IP相关的配置信息。酒店公共网络的路由器或宽带接入网关上通常都具备DHCP功能。
SMTP(Simple Mail Transfer Protocol),简单邮件传送协议,用户的邮件软件(Outlook,Foxmail等)通过SMTP服务器发送邮件时所使用通信协议。
Portal认证,一种使用浏览器作为通用认证客户端的上网认证方法,用户上网时在浏览器里输入任何URL都被强制转向到一个认证页面,输入帐号/密码等认证通过以后才能正常访问英特网。Portal认证被广泛适用于酒店和移动热点等区域。
发明内容
本发明公开一种适用于酒店公共网络的即插即用接入方法,旨在能够有效地支持配置固定IP地址的用户终端可正常接入到酒店公共网络访问公众Internet,实现即插即用。
本发明采用如下的技术方案实现的:
酒店公共网络,包括客房有线/无线网络,以及酒店会议室,大堂等公共区域的有线和无线网络;由酒店智能网关,或者路由器,防火墙等三层设备,在酒店公共网络实现ARP代理应答,和DNS强制转向;在酒店公共网络,由酒店智能网关,或者路由器,防火墙等三层设备,实现HTTP代理检测,将HTTP代理请求转向到本地HTTP代理服务进行处理,HTTP代理的智能转向方法不局限于固定IP地址用户的接入,也适用于DHCP用户接入;在酒店公共网络,由酒店智能网关,或者路由器,防火墙等三层设备,在酒店公共网络实现不可达SMTP请求自动转向外部指定的SMTP Relay服务器,SMTP智能转向方法不局限于固定IP地址用户,也适用于DHCP用户接入。
酒店公共网络具备智能网关,智能网关安装有ARP Spoof模块、M-NAT模块、DNS智能转向模块,其具体处理步骤为:
第1步,配置了固定IP地址的用户终端接入到酒店公共网络;
第2步,该用户终端对默认网关发起ARP请求,解析默认网关的MAC地址;
第3步,酒店公共网络的智能网关ARP Spoof模块监听ARP请求,判断该用户终端发起的ARP请求,若为固定IP地址的用户终端发出的请求;记录该该用户终端的源地址;
第4步,智能网关ARP Spoof模块做ARP Spoof应答,以智能网关接入端口的MAC地址作为ARP解析目的MAC地址,构造出一个ARP Reply报文发送给请求该用户终端;
第5步,该用户终端的ARP表更新,该用户终端的默认网关ARP表项目的IP地址指向智能网关接入端口的MAC地址;
第6步,该用户终端与智能网关,双方成功建立IP通信关联;
第7步,智能网关M-NAT模块将该用户终端的IP地址和MAC地址作为接入终端的源地址记录接入地址表;
第8步,智能网关M-NAT模块将接入地址表的源地址与保留地址池中的内部专用源地址匹配,并在智能网关的出口处转换为内部专用源地址;
第9步,智能网关内建NAT规则,在智能网关的出口处,将这段保留源地址转换为智能网关的出口公网IP地址,使被分配的公网IP地址与源地址建立映射关系;用户终端能够与Internet正常连通;
第10步,若用户终端发出DNS解析请求,
第11步,智能网关的DNS智能转向模块将用户终端的DNS请求,自动强制转向到智能网关的本地DNS Cache服务进行处理,
第12步,该用户终端与公网建立连接,并可以进行DNS解析。
在上述方案的基础上,智能网关还安装有本地HTTP代理服务模块,其处理过程如下:
a.当用户终端发出HTTP请求,
b.智能网关的本地HTTP代理服务模块,对该HTTP请求强制转向到本地进行服务处理,并判别用户终端的浏览器是否启用了HTTP代理,
c.如果配置了HTTP代理,就记录该用户终端被强制转向HTTP请求的原目的IP地址和端口记录到HTTP代理服务器列表中;
d.该用户终端与目的HTTP服务器建立连接。
在上述方案的基础上,智能网关还安装有SMTP会话跟踪和转向服务模块,其处理过程如下:
a.智能网关SMTP会话跟踪和转向服务模块,跟踪所有用户终端的SMTP会话状态,
b.当TCP连接时,则记录SMTP会话的目的IP地址到本地RAM的SMTP不可达列表;
c.当用户终端的SMTP请求目的IP与SMTP不可达列表的记录相匹配,则被强制转向到一个指定的本地或者公网SMTP服务器进行处理;
再进一步,智能网关可定时对SMTP不可达列表轮询检查,如果有不可达记录存在超过指定的时间,比如8个小时,则删除该记录。使得被跟踪的不可达SMTP每隔一段时间都再次获得一次被检测是否可以正常连接的机会,如果检测到可以被正常连接,那么就不需要再被列入不可达列表。
本发明中包含的五个关键模块,可全部在AMTT的酒店智能宽带接入网关产品eFlow PnPGW中实现:
①ARP Spoof模块,通过智能网关的ARP监听和代理应答,使得配置固定IP地址的终端接入到酒店公共网络后,能够与位于酒店公共网络出口的智能宽带接入网关建立IP通信关联;
②M-NAT模块,使得固定IP地址的终端接入到酒店公共网络后,通过智能宽带接入网关的特殊MAC地址和IP管理,以及改进的NAT手段,解决固定IP地址终端与酒店公共网络本地子网/掩码和路由的不匹配问题;
③DNS智能转向模块,通过智能宽带接入网关自动化的DNS强制转向,解决固定IP地址终端与酒店公共网络的本地DNS服务器IP地址的不匹配问题;
④HTTP代理智能侦测和转向,通过智能宽带接入网关的自动化HTTP代理发现,并且强制转向,解决了用户原有HTTP代理服务器不可达而引起WEB浏览故障的问题;
⑤SMTP智能跟踪和转向模块,通过智能宽带接入网关的SMTP会话跟踪,自动发现和维护不可达SMTP服务器IP列表,并且对目的地址与不可达SMTP列表地址匹配的SMTP请求,进行自动化的强制转向,转向到指定的一个外部SMTP服务器进行处理,解决用户邮件客户端配置的SMTP服务器不可达的问题。
本发明有益效果是:
本发明使得用户的IP地址,掩码,默认网关,DNS这个基本接入要素即使与现有网络环境所要求的并不匹配,也能正常接入到现有网络中。在类似酒店环境的公共网络,包括客房有线/无线网络,以及酒店会议室,大堂等公共区域的有线和无线网络区域,本发明不仅解决了在公网地址相对短缺的酒店公共网络环境实现自动化和高效的公网IP地址管理和分配问题,还使得用户接入到现有酒店网络后,即使配置了不可用的HTTP代理(比如企业内网HTTP代理),也能正常进行WEB浏览,即使所配置的SMTP不可访问(企业内网SMTP,或者境外不可达SMTP),也能正常发送邮件。本发明解决了除了IP配置与现有网络环境不匹配引起的问题,还解决了WEB浏览和邮件发送经常产生故障的问题。
宽带网络服务已经成为酒店的基础信息服务,在商务酒店中,几乎所有住店客人都依赖酒店的宽带服务来完成远程办公或者日常的信息交流。本发明可以使得客人笔记本电脑、智能手机、平板电脑等终端设备真正即插即用接入到酒店宽带网络,大大降低酒店宽带网络服务引起的客人投诉,显著酒店IT人员的服务量,提升酒店宽带服务质量,提升客人满意度,为酒店带来显著的经济效益。
附图说明
图1是实现ARP Spoof模块的示意图;
图2是实现M-NAT模块的示意图;
图3是实现DNS智能转向模块的示意图;
图4是实现HTTP代理智能侦测和转向模块的示意图;
图5是实现SMTP智能跟踪和转向模块的示意图;
图6是一个具体实例示意图;
具体实施方式
下面,结合附图和具体实施例,对发明的实施例作进一步的说明。
实施例1
当一个IP终端接入到任意一个局域网并且发出上网动作时,都会引发IP终端请求与本地默认网关的通信,具体表现为IP终端发出ARP请求,解析本地默认网关IP地址对应的MAC地址。解析成功后,IP终端就与本地默认网络建立通信关联,IP终端上网发出的所有IP报文才能正确发送给本地默认网关,经默认网关路由到公众Internet。
为解决固定IP地址用户的接入问题,智能接入网关监听酒店公共网络的所有ARP请求,当收到源IP地址与网关接入端口的本地子网不匹配的ARP请求时,可以判定是固定IP地址终端发出的请求解析默认网关的ARP请求,智能网关记录下接入终端的固定IP地址和MAC地址到本地RAM中的一个即插即用地址状态表(以下简称PnP状态表),之后以接入终端所请求的默认网关IP地址为ARP解析目的IP地址,以智能网关接入端口的MAC地址作为ARP解析目的MAC地址,构造出一个ARP Reply报文发送给请求终端。此过程结束后,固定IP地址终端的ARP表就被刷新,记录的默认网关的MAC地址正确指向了智能网关的接入端口,与智能网关建立起通信关联。
ARP Spoof可以使得固定IP终端与智能网关间建立起通信关联,但是接入终端的固定IP与酒店公共网络的IP地址/子网以及和路由策略并不匹配,那么用户发出的IP报文仍然无法被智能网关正确路由到公众Internet。
本发明采用了一种称之为M-NAT的方法,M-NAT有别于传统的NAT只关注IP地址条件,而增加引入源MAC地址条件,以接入终端的(源MAC地址,源IP地址)作为组合源地址条件,在智能网关的接入端口处将所有固定IP地址接入终端的源地址转换为一段保留的内部专用源地址,再在智能网关的出口处,将这段保留源地址转换为智能网关的出口公网IP地址,这样可以解决固定IP接入终端的子网匹配和路由问题。
ARP Spoof配合M-NAT仅能保证用户的ARP和IP路由正确,但仍然不能确保用户一定能够正常地访问Internet,配置固定IP地址的用户通常也配置了固定IP地址的DNS,所配置的DNS有可能是用户所在企业的内网DNS,也有可能是用户所在地运营商的DNS,这些固定配置的DNS在酒店公共网络内可能都是不可达的,因此需要增加DNS请求强制转向手段。
本实施例采用了一种自动化的DNS智能转向方式,智能网关维护一个本地DNS Cache服务,将所有接入用户的DNS请求自动转向到智能网关的本地DNS Cache服务进行处理,这样就保证了所有固定IP地址用户的DNS解析正常。
本发明所使用DNS智能转向方法的额外益处如下:
(1)主备DNS的切换对接入用户完全透明,使得即使外部电信运营商主备DNS全部失效,本地的DNS服务仍然能正常延续工作一段时间;
(2)免除管理员手工配置DNS转向规则的麻烦。
如附图1、2和3所示,本实施例的具体实现步骤如下:
第1步,配置了固定IP地址的用户终端接入到酒店公共网络;
第2步,该用户终端对默认网关发起ARP请求,解析默认网关的MAC地址;
第3步,酒店公共网络的智能网关监听ARP请求,判断该用户终端发起的ARP请求,若为固定IP地址的用户终端发出的请求;记录该该用户终端的源地址;
第4步,智能网关做ARP Spoof应答,以智能网关接入端口的MAC地址作为ARP解析目的MAC地址,构造出一个ARP Reply报文发送给请求该用户终端,
第5步,该用户终端的ARP表更新,该用户终端的默认网关IP地址指向智能网关接入端口的MAC地址;
第6步,该用户终端与智能网关,双方成功建立IP通信关联;
第7步,智能网关将该用户终端的IP地址和MAC地址作为接入终端的源地址记录接入地址表;
第8步,智能网关将接入地址表的源地址与保留地址池中的内部专用源地址匹配,并在智能网关的出口处转换为内部专用源地址;
第9步,智能网关内建NAT规则,在智能网关的出口处,将这段保留源地址转换为智能网关的出口公网IP地址,使被分配的公网IP地址与源地址建立映射关系;用户终端能够与Internet正常连通;
第10步,若用户终端发出DNS解析请求,
第11步,智能网关的本地DNS Cache服务模块将用户终端的DNS请求,自动强制转向到智能网关的本地DNS Cache服务进行处理,
第12步,该用户终端与公网建立连接,并可以进行DNS解析。
实施例2
在实施例1的基础上,本实施例在智能网关中又增加了HTTPProxy侦测和智能转向模块。
当用户浏览器配置了HTTP代理,和没有配置HTTP代理的情况下,上网浏览时所发出的HTTP请求格式是有明显区别的。以下以访问百度网站为例阐述具体区别。
没有配置HTTP代理的情况下,浏览器发出的HTTP请求将完整的URL拆分表达,其中首行只包含目录信息,而在HOST:行包含主机名形式,形如:
GET/HTTP/1.1
...
HOST:www.baidu.com
...
配置了HTTP代理的情况下,浏览器发出的HTTP请求首行即包含完整的URL信息:
GET HTTP://www.baidu.com HTTP/1.1
因此通过HTTP请求的首行即可判别出浏览器是否配置了HTTP代理。由于HTTP是基于TCP的,也就是说只有TCP请求成功建立以后,HTTP请求才可以发送出来,因此智能网关截获HTTP请求只能通过HTTP强制转向,将用户的HTTP请求转向到本地,或者外部的HTTP Server,这样才能保证截获用户的HTTP请求。
如果酒店公共网络的HSIA启用了Portal认证,而Portal认证的前提技术就是HTTP强制转向过程,那么在Portal认证的过程中,就可以判别用户的浏览器是否启用了HTTP代理,如果配置了HTTP代理,就记录用户被强制转向HTTP请求的原目的IP地址和端口记录到HTTP代理服务器列表中。之后只要用户发起目的IP和端口与HTTP代理服务器列表匹配的TCP请求,就都被强制转向本的HTTP透明代理服务模块进行处理。
如果酒店没有启用Portal认证,或者用户使用了其它的认证手段,比如MAC地址认证,那么就必须对用户发出的首个可能的HTTP请求进行强制转向,包含TCP目的端口80,8080,3128等常用的HTTP代理端口进行强制转向,判别用户的浏览器是否启用了HTTP代理,如果配置了HTTP代理,就记录用户被强制转向HTTP请求的原目的IP地址和端口记录到HTTP代理服务器列表中。
本实施例的具体步骤如下:
以实施例1中的方法,当用户终端接入到酒店公共网络,并与公网建立起连接后,HTTP代理智能侦测和转向模块的处理过程为:
a.当用户终端发出HTTP请求,
b.智能网关的本地HTTP代理服务模块,对该HTTP请求强制转向到本地进行服务处理,并判别用户终端的浏览器是否启用了HTTP代理,
c.如果配置了HTTP代理,就记录该用户终端被强制转向HTTP请求的原目的IP地址和端口记录到HTTP代理服务器列表中;
d.该用户终端与目的HTTP服务器建立连接。
实施例3
在实施例1或2的基础上,本实施例在智能网关中又增加了SMTP会话跟踪和智能转向模块,使得在邮件客户端软件中配置了不可达SMTP服务器的用户仍然能够正常发送邮件。
本实施例的具体步骤如下:
以实施例1或2中的方法,当用户终端接入到酒店公共网络,并与公网建立起连接后,SMTP会话跟踪和智能转向模块具体处理过程如下:
1.智能网关跟踪所有的SMTP会话状态,即目的端口为25的TCP连接的状态,当TCP连接,则记录SMTP会话的目的IP地址到本地RAM的SMTP不可达列表;
2.当用户的SMTP请求目的IP与SMTP不可达列表的记录相匹配,则被强制转向到一个指定的本地或者公网SMTP Relay服务器进行代理发信处理;
3.系统定时对SMTP不可达列表轮询检查,如果有不可达记录存在超过指定的时间,比如8个小时,那么就删除记录,使得被跟踪的不可达SMTP每隔一段时间都再次获得一次被检测是否可以正常连接的机会,如果检测到可以被正常连接,那么就不需要再被列入不可达列表。
实施例4
本实施例公开了如何使用上述5个模块,使得酒店用户的基本IP配置,浏览器HTTP代理配置,邮件客户端的SMTP配置均可能存在错误或与酒店本地网络环境要求不匹配的情况下,都能够做到用户电脑在酒店公共网络中即插即用,WEB浏览和邮件发送正常使用能。具体处理过程如下:
1.用户电脑接入到酒店公共网络中,用户电脑即使配置了与本地网络不匹配的IP地址、掩码和网关,使用ARP Spoof,能够保证用户电脑与网关建立IP层通信关联,之后使用M-NAT,使得用户电脑能够与Internet正常连通;
2.应用DNS强制转向,智能网关的本地DNS Cache服务模块将用户终端的DNS请求,自动强制转向到智能网关的本地DNSCache服务进行处理,保证用户DNS请求被正确处理和解析;
3.应用HTTP代理智能侦测和转向,智能网关的本地HTTP代理服务模块,对该HTTP请求强制转向到本地进行服务处理,并判别用户终端的浏览器是否启用了HTTP代理,如果配置了HTTP代理,就记录该用户终端被强制转向HTTP请求的原目的IP地址和端口记录到HTTP代理服务器列表中;该用户终端与目的HTTP服务器建立连接。
4.应用SMTP智能跟踪和转向,智能网关SMTP会话跟踪和转向服务模块,跟踪所有用户终端的SMTP会话状态,当TCP连接时,则记录SMTP会话的目的IP地址到本地RAM的SMTP不可达列表;当用户终端的SMTP请求目的IP与SMTP不可达列表的记录相匹配,则被强制转向到一个指定的本地或者公网SMTP服务器进行处理。
以上所述仅为本发明的较佳可行实施例,并非因此局限本发明的专利范围,故凡是运用本发明说明书及附图内容所作的等效结构变化,均包含于本发明的保护范围。