图1是本发明方法的流程图。
具体实施例方式
下面结合附图对本发明的技术方案进一步详细描述。
本发明可以在宽带接入服务器上实现。在宽带接入服务器中,底层数据包通过网络处理器进行转发,对于未认证的用户数据包,网络处理器需要将用户数据包提交主控协议模块处理。
如图1所示,首先动态IP接入用户通过DHCP方式获得IP地址和域名服务器DNS的地址,此时用户获得的IP地址是私网的IP地址。域名服务器DNS的地址可以采用宽带接入服务器的地址,或者设置有效的DNS地址,有以下两种方式(1).把宽带接入服务器地址设置为用户的一个DNS地址。如果宽带接入服务器作为DHCP服务器,则可以把回送给用户的主DNS地址设定为宽带接入服务器的地址;如果宽带接入服务器作为DHCP中继器(DHCP relay),则在回送给用户信息时,可把主DNS地址修改为宽带接入服务器的IP地址。

(2)不修改用户DNS地址。
用户在没有通过认证授权以前,一般是不允许用户访问外部网络的。底层网络处理器对用户发来的数据包进行分析处理,如果是ICMP包或访问PORTAL服务器的数据包,则由网络处理器查找路由表,按照目的地址进行数据转发;如果DNS请求包,则送至主控协议模块处理;如果是其他数据包,则丢弃。
用户打开浏览器进行访问,发送DNS请求,DNS请求包被送交宽带接入服务器中的DNS处理模块进行处理,DNS处理模块是一种主控协议模块。该模块收到用户DNS请求后,先检查是否是授权用户,如果是未授权用户,则把PORTAL服务器的IP地址回送给用户主机;如果是已经认证授权的用户,则将DNS请求处理按照数据包的目的地址进行路由转发,如果目的地址是宽带接入服务器,则返回正确的IP地址给用户。
用户根据返回的IP地址,访问PORTAL页面,并根据提示提交认证请求,PORTAL服务器进行认证,当认证通过后,分配正确的IP地址给用户,此时分配的IP地址就是公网的IP地址。此时用户就可以访问互联网了,网络处理器收到用户的数据包后查找路由表,按照目的地址根据路由转发。
通过以上步骤,就可以实现动态IP接入用户的强制PORTAL访问。
权利要求

1.一种接入用户强制访问认证服务器的方法,应用在宽带接入服务器上,其特征在于,包括以下步骤第一步、动态IP接入用户通过DHCP方式获得IP地址和域名服务器DNS的地址;第二步,网络处理器接收用户发来的数据包,检验是否为授权用户,如果是,则转至第四步;如果否,则进行下一步;第三步,网络处理器分析处理用户数据包,如果是网间控制报文协议ICMP包或访问PORTAL服务器的数据包,则由网络处理器查找路由表,按照目的地址进行数据转发;如果是DNS请求包,则转发给主控协议模块,进行步骤五;如果是其他数据包,则丢弃数据包;第四步,用户发送DNS请求,DNS请求包被送至主控协议模块;第五步,主控协议模块检验是否是授权用户,如果是未授权用户,则把PORTAL服务器的IP地址回送给用户主机,转至第六步;如果是已经认证授权的用户,则主控协议模块按照数据包的目的地址进行路由转发,如果目的地址是宽带接入服务器,则返回正确的IP地址给用户;第六步,用户根据返回的IP地址,访问PORTAL页面,提交认证请求;第七步,PORTAL服务器进行认证,认证通过后,分配正确的IP地址给用户。
3)路由器重启后,设置dhcp服务,启用dhcp服务器,如果主dns服务器和备用dns服务器的ip地址为空,则主dns服务器ip地址设为114.114.114.114,备用dns服务器ip地址设为114.114.115.115。那么虚拟机的ip地址可以设置为192.168.1.98/255.255.255.0,设置了这个ip地址,abcd这四个人就可以通过192.168.1.98访问虚拟机了,如果虚拟机需要上外网,那么还需要配置虚拟机的路由地址,就是192.168.1.1了,这样,虚拟机就可以上外网了,但是,上网我们一般是通过域名去访问外网的,所以我们还需要为虚拟机配置一个dns服务器,我们可以简单点,把dns服务器地址配置为google的dns服务器:8.8.8.8,到此,虚拟机就可以上网了。图2最后修改dhcp服务器->dhcp服务,将地址池开始地址和结束地址分别填写为192.168.2.100和192.168.2.199(注意前三个字段需要和lan口的ip地址一致),网关和主dns服务器都填写为lan口的ip地址192.168.2.1。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-94924-2.html
看来米国已经把中国摸了很透彻了