RouterOs建立PPPoE虚拟拨号服务器

时间:2024-02-25 19:30:00
       作为一个网络管理员,近期被“网络执法官”弄的焦头烂额。虽然我们可以查找出非法攻击者,但是却没有更好的办法进行治理。常常是我们前脚处理,他们马上就重新攻击。多次请示领导,也没有更好的解决方案。我们只好改用其他的方式管理。

       我们知道,利用时下流行的PPPoE的方法,是最好的避免基于以太网的arp攻击的方法。(其具体原理请读者自行查阅资料,本人不再累述)。但是专业的硬件解决方案价格太高了,申请了多次,领导都没有批准。没办法,只好自选出路了。

          在 网上流浪了一天以后,终于选择出了一款软路由软件——RouterOs,由MikroTik公司出品,号称是ISP级的路由软件。看过它的说明书后,发现 它的功能还真是够多!最关键就是——它支持PPPoE Server。好,就选择它了!下面就开始我的RouterOs之旅:

一:RouterOs简介

       RouterOs 是一款基于Linux的路由器操作系统,功能强大,拥有几乎所有硬件路由具有的功能。当然,这里我们只选用了它的PPPOE Server功能。RouterOs要求相当简单:一台具有奔腾以上的CPU,64M内存的X86计算机就足够了(既然号称ISP级的路由器,对内存的要 求是大了点)。关键是对网卡的支持:Intel的8255X系列、3com的3c905系列、RealTek的8139系列,常见的网卡全可以。(建议大 家选用Intel82559网卡,速度和稳定性都很好。RealTek8139对CPU资源消耗较大,不适合大数据流量工作。3com就不要考虑了,官方 文件说它不支持MTU1500,在特殊应用上可能有问题。具体的资料请大家到到www.mikrotik.com查询)。笔者使用的系统是Intel的奔 腾Ⅲ450,64M内存,Intel82559 100M 网卡,可以轻松的承担大约200用户的PPPOE拨号以及NAT(网络地址转换)。唯一的缺点是该软件是收费的,试用时间只有24小时。不过还好,发挥我 们的“能动性”,可以解决这个问题。

 二:RouterOs的安装

       这 一点很简单――RouterOs已经和Linux结合在一起了。大家可以到http://www.mikrotik.com /download.html#v2 去下载。大约有20M。软盘镜像版可能需要7-9张软盘,建议下载光盘镜像版。将下载的.iso文件用刻录软件刻录为光盘,可以利用这张光盘启动并安装 RouterOs。安装是自动的,基本不需人工干预。为了以后方便使用,可以一起下载RouterOs的图形配置界面Winbox。

 三:RouterOs的基本配置

   重新启动计算机后,可以看到下图的界面:
 
       管 理员用户名是:admin 默认口令为空。Ok,现在忘掉你学过的cisco或者华为命令吧。让我们来看看RouterOs的配置命令:如果大家用过Linux,就会感觉很熟悉。 RouterOs的配置按分操作目录分类的(官方文件叫Home menu level,我暂且这么翻译),也就是说在不同的目录提示符下所能进行的工作是不同的。所以,在下文中还请大家注意当前工作目录。
 常用命令如下(该命令基本通用):
 输入?来显示当前目录下可执行的命令。
 使用print来显示当前目录下的配置。
 使用add 来添加配置。
 使用remove 来删除指定配置。
 输入..回到上曾目录。
 RuterOs有?号命令补全功能,在没有歧义的情况下也可以使用命令缩写。
 为了安全,请大家在根目录先使用password命令来修改admin用户的口令。
 接下来,开始进入我们的RouterOs之PPPoE Server之旅吧!

 ⒈ 配置我们的网卡:

 RouterOs中,网卡默认以ether1、ether2、ether3的形式进行命名。  
 网卡配置是在[admin@MikroTik] interface>目录,使用print命令来看看:
 [admin@MikroTik] interface> print
 Flags: X - disabled, D - dynamic, R - running
 #   NAME               TYPE       RX-RATE   TX-RATE   MTU
 0 X ether1               ether         0       0       1500
 1 X ether2               ether         0       0       1500
 X表示网卡还没有启动,使用enable命令启动:
 [admin@MikroTik] interface> en 0
 [admin@MikroTik] interface> en 1
 再用print命令看看:
 [admin@MikroTik] interface> print
 Flags: X - disabled, D - dynamic, R - running
 #   NAME               TYPE       RX-RATE   TX-RATE   MTU
 0 R ether1               ether         0       0       1500
 1 R ether2               ether         0       0       1500
 状态变成R,说明网卡启动成功。
 查看网卡ether1数据流量:
 [admin@MikroTik] interface> monitor-traffic ether1
   received-packets-per-second: 3
     received-bits-per-second: 24.4kbps
     sent-packets-per-second: 0
       sent-bits-per-second: 0bps
 [Q uit|D dump|C-z pause]
 Q键退出。D键记录数据包。C键暂停。
 查看网卡ether1工作状态:
 [admin@MikroTik] interface ethernet> monitor ether1
             status: link-ok
       auto-negotiation: done
             rate: 100Mbps
           full-duplex: yes
     default-cable-setting: standard
 [Q quit|D dump|C-z pause]
 可以看出,网卡已经连接,以100M全双工的方式运作。

 ⒉ 为网卡配置IP地址。

   我的网络外网连接IP是219.218.188.12(教育网的)。连接到网卡ether1。
   为网卡ether1设置IP地址:
   [admin@MikroTik] ip address> add address=219.218.188.12/24 interface=ether1
   内网网卡用于PPPoE Server,为了减少麻烦,所以不设置IP地址。
   查看一下IP设置情况:
 [admin@MikroTik] ip address> print
 Flags: X - disabled, I - invalid, D - dynamic
 #   ADDRESS         NETWORK       BROADCAST     INTERFACE  
 0   219.218.188.12/24     219.218.188.0     219.218.188.255     ether1 
⒊ 配置PPPoE-Server

 这里有点麻烦,还请大家特别注意当前工作目录。
 RouterOs的PPPoE Server 配置大致可分4个步骤
 ·为PPPoE虚拟拨号用户设置一个IP地址池,用于给客户动态分配IP地址。
 ·添加一个PPP profile ,设置一个路由器IP地址,以使客户可以从IP POOL中获取IP地址。
 ·添加PPPoE拨号用户,用户可以使用用户名和口令进行拨号。
 ·添加一个PPPoE Server。
 工作完成,用户才可以进行虚拟拨号。再强调一下,请大家注意工作目录。
 我们来具体操作一下:
 ① 添加一个名称为mypool的地址池
 [admin@MikroTik] ip pool> add name=mypool ranges=192.168.0.3-192.168.0.254
 可以使用print命令看一下:
 [admin@MikroTik] ip pool> print
 #   NAME                           RANGES                
 0   mypool                         192.168.0.3-192.168.0.254        
 ② 添加一个名称为myserver的PPP Profile
 [admin@MikroTik] ppp profile> add name=myserver local-address=192.168.0.1 remote-address=mypool
 可以使用print命令看一下:
 [admin@MikroTik] ppp profile> print
 Flags: * - default
 1   name="myserver" local-address=192.168.0.1 remote-address=mypool session-timeout=0s idle-timeout=0s
   use-compression=no use-vj-compression=no use-encryption=no require-encryption=no only-one=no
   change-tcp-mss=yes tx-bit-rate=0 rx-bit-rate=0 incoming-filter="" outgoing-filter="" dns-server=""
 wins-server=""
 ③ 为PPPoE Server添加用户名为yourland,口令为10057,该用户只能使用PPPoE服务。
 [admin@MikroTik] ppp secret> add name=yourland password=10057 service=pppoe profile=myserver
 使用命令print看一下:
 [admin@MikroTik] ppp secret> print
 Flags: X - disabled
 #   NAME     SERVICE CALLER-ID         PASSWORD         PROFILE   REMOTE-ADDRESS
 0   yourland   pppoe                 10057           myserver   0.0.0.0    
    
 ④ 添加一个PPPoE 服务,名为mypppoe,端口设置为内网接口ether2

 [admin@MikroTik]interface pppoe-server server>add service-name=mypppoe interface=ether2 default-profile=myserver
 也可以使用命令print看一下。
 
 四.配置NAT(网络地址转换)

 由于我们内网使用的是私有IP地址,为了学生可以正常上网,还要配置NAT进行地址转换才可以。
 我们要使用的是RouterOs称为“Source NAT”的方式。
 [admin@MikroTik] ip firewall src-nat>add action=masquerade out-interface=ether1
 使用命令激活NAT
 [admin@MikroTik] ip firewall src-nat> enable 0

 五.为路由器配置默认路由,IP地址219.218.188.1是我们下一跳的地址。

   [admin@MikroTik] ip route> add dst-address=0.0.0.0/0 gateway=219.218.188.1

 六.配置客户机

   客户机上只需要安装一款PPPoE虚拟拨号软件就可以了。只是要注意,客户机和PPPoE服务器要通过交换机正确连接才可以。

 七.使用Winbox进行方便配置

   在一台可以和RouterOs服务器正确连接的PC上安装Winbox。
 
 
 这样,配置就方便多了,终于可以忘记刚才的命令了。
 
 总 之,RouterOs功能的确很是强大,我这里只用到了一小部分功能。更多的功能还待大家来共同发掘!另:如果您如果觉的用硬盘不够安全的话,可以去购买 一块“电子硬盘”或者CF卡转IDE口的转接器,把您的RouterOs配置成一台真正的路由。配置了PPPoE虚拟拨号以后,我们的网络管理员终于闲了 下来,还真的有点不习惯
转至:http://cisco.chinaitlab.com/networks/528999.html