网络通信 频道

架设pppoe服务器拨号上网 防止ARP欺骗

  【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服务器。
 

1
相关文章