【IT168 专稿】ARP病毒是局域网中的一个不可回避的话题, 但是这个问题在拨号用户那儿好象没怎么听说过, 现在电信或者网通的家庭用户一般都是使用PPPOE拨号的方法上网, 我到亲戚家帮着调试网络的时侯就发现怎么他的机器里面IP地址与网关的地址是一致的(呵呵, 象我们在局域网中调试网络习惯了, 拿到一个机器先打ipconfig/all命令看看, 了解一下网络的基本情况), 一般来说电信或网通ADSL猫PPPOE拨号的网络拓扑如图1所示:
图1
是的, 尽管解决ARP地址欺骗的方法有很多, 但是我们在局域网中借鉴ADSL所采用PPPOE拨号上网的方法, 在局域网中建立PPPOE服务器, 让局域网用户也通过PPPOE服务器拨号上网, 使局域网中的微机既可以上网, 又使其获得的IP地址与网关地址一致, 从而达到防止利用ARP地址欺骗在局域网中发动攻击的可能, 不也是一种思路吗。
一、搞清楚PPPOE网络拓扑
从网上大家也可以找到PPPOE配置的教程, 但是如果没有一个明白人指点的话, 自己摸索着配置很难成功, 为什么, 因为网上的教程都是直接从命令配置说起, 没有把网络拓扑说清楚, 如果是在虚拟机中进行配置, 那个网络拓扑就更难说清楚, 所以为了把PPPOE服务器的配置讲清楚, 先要搞清楚网络拓扑, 先说一下, 正常的PPPOE服务器在局域网中的拓扑图(如图2)。
图2
结合图2我们要再说明一下, 一般来说在单位的局域网中, 用户上网都是先通过网线连接到交换机, 交换机再上连NAT(地址转换)设备(宽带路由器或硬件防火墙或宽带上网管理系统)来实现的, PPPOE服务器位于交换机与NAT设备之间, 起到验证拨号用户信息和分配IP地址等作用, 但是PPPOE服务器分配给用户的IP地址与DHCP服务器分配给用户的IP地址是不一样, DHCP服务器分配给了用户完整的IP地址/子网掩码/网关/DNS等信息, 但是PPPOE分配给用户的只是IP地址和DNS服务器地址。
如果我们要在虚拟机中拿routeros软件作PPPOE服务器的实验, 就要更加好好的规划一下网络拓扑,
第一个要点:真实的机器中虚拟出一台XP的系统(作为拨号测试的客户端), 再虚拟出一台routeros系统(作为PPPOE服务器)。
第二个要点, 虚拟的routeros系统要设置两块网卡, 而且都处于桥接模式, 网络拓扑如图2所示:
图3
但是实际上我们是没有这两台交换机的, 但是由于虚拟机的桥接网卡的功能, 我们可以按照上面的图示理解。
二、PPPOE服务器网络配置
结合我配置PPPOE服务器的经验(也可以说总结多次不成功的经历所带来的教训吧), 很多次都是配置过程中某一个小环节出现问题导致失败, 所以说要想成功的配置好PPPOE服务器, 先要知道在哪儿出现问题了, 也就是说要保证前面的操作是正确的, 总体来说, 有关网络设置的操作有如下几步:
(一)设置网卡的名字和IP地址信息
[admin@MikroTik] interface> set 0 name=lan
[admin@MikroTik] interface> set 1 name=wan
[admin@MikroTik] interface> print
Flags: X - disabled, D - dynamic, R - running
# NAME TYPE RX-RATE TX-RATE MTU
0 R lan ether 0 0 1500
1 R wan ether 0 0 1500
[admin@MikroTik] interface> /ip
[admin@MikroTik] ip> address
[admin@MikroTik] ip address> add
address: 10.70.10.10/16
interface: wan
[admin@MikroTik] ip address> print
Flags: X - disabled, I - invalid, D - dynamic
# ADDRESS NETWORK BROADCAST INTERFACE
0 10.70.10.10/16 10.70.0.0 10.70.255.255 wan
经过以上的设置, 我们就为这台PPPOE服务器设置了必要的网络参数, 有了IP地址, 我们就可以登录http://10.70.10.10, 从上面下载winbox这款软件, 以后的操作都可以图形界面中进行了。 (二)设置默认路由
PPPOE服务器也可以理解为一台路由器, 因此也必须设置默认路由。
>IP>Router, 添加一条新的路由即可, 本机设置的为10.70.0.1
设置好以后, 我们可以点击winbox中的New Terminal, 登录进入这台PPPOE服务器, 进行一下ping网关的操作, 如果能够ping通, 说明网络设置已经没有问题了三、PPPOE服务器的设置
PPPOE服务器的设置分为4步:
(一)添加一个地址池
IP>Pool
Name:pool1
Address:192.168.0.10-192.168.0.100
从这儿就可以看到, 我们为用户分配的地址只有IP地址, 没有子网掩码, 也没有网关。
(二)在PPP中添加一个新的Profile文件
PPP>Profiles, 新建一个
Name:profile1
Loacl Address:192.168.1.1
Remote Address:pool1(即为客户端分配地址池pool1的地址)
(三)在PPP的Secrets中添加拨号用户
PPP>Secrets
Name:ppp1
Password:ppp1
Service:pppoe
Profile:profile1
当然了, 如果要添加多个用户的话, 就在这儿多添加几个吧。
(四)添加PPPOE服务
这个步骤是没有错, 只是要特别的提醒大家, 是在PPP>Interfaces下已经有PPPoE Server了, 我们要选中这一项, 再点添加"+", 这时就会出现相应的选项:
Service Name:Service1
Interface:lan
Default profile:profile1
以上四步设置完成了, PPPOE服务器也就架设好了, 在另一台虚拟的XP上就可以新建一个宽带连接, 服务器名填"service1", 用户名和密码均为"ppp1", 应该可以很顺利的就拨号上去了, 用ipconfig命令看一下, 会得到如下信息:
PPP adapter service1:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : WAN (PPP/SLIP) Interface
Physical Address. . . . . . . . . : 00-53-45-00-00-00
Dhcp Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.0.98
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . : 192.168.0.98
DNS Servers . . . . . . . . . . . : 222.175.169.91
219.146.0.130
NetBIOS over Tcpip. . . . . . . . : Disabled
从中可以看出IP地址与网关地址是一致的, 而且子网掩码是255.255.255.255(表示一台主机), 当然现在还是无法上网的, 还需要下面的两步设置。
(五)设置NAT
IP>Fireware>NAT
注意, 我们要在右上角的位置选择"srcnat", 即针对源地址作NAT
Out.Interface:wan
Action:masquerade(即作IP伪装)。
(六)设置DNS
IP>DNS>Static>Settings
Primary DNS:222.175.169.91
Seconday DNS:219.146.0.130
以上六步建立好以后, 用户再次PPPOE拨号上网, 就可以正式上网了。
利用routeros软件建立PPPOE服务, 大致步骤就是这样, 搞清楚了网络拓扑, 再掌握必要的配置命令, 利用routeros来建立一台PPPOE服务器并不是一件很困难的事, 但是一个不可回避的事实是routeros是一款商业软件, 价格不菲, 所以我们要寻求替代产品, 红旗LINUX6.0桌面版就可以胜任, 下一篇文章就介绍一下利用通用的LINUX系统来架设PPPOE服务器。
……