以Linux做路由器的问题

2016-01-29 19:41 8 1 收藏

以Linux做路由器的问题,以Linux做路由器的问题

【 tulaoshi.com - Linux 】

  以 Linux 当 router 的方法                                by C.W.Huang 
********************************************************************** 
          本文欢迎非营利性质的转载,以便能让更多人受惠! 
             但若欲引用於商业用途需先知会原作者. 
********************************************************************** 
  利用 Linux 当 router 其实很简单.首先你在 compile kernel 时要选 
IP forwarding. 用这个 kernel 开机,看看能不能抓到两块网路卡.如果 
不行的话在 /etc/lilo.conf 上加上 
 append="ether=irq,io-port,eth0 ether=irq,io-port,eth1" 
再重跑 lilo. 或者如果你用 loadlin 的话,用 
 loadlin vmlinuz root=/dev/??? ro ether=irq,io,eth0 ether=irq,io,eth1 
应该就可以了.注意看开机时有没有抓到? 或看 /proc/net/dev 有没有 eth0 
和 eth1? 有的话就对了(如果没有就要 recompile kernel 了.请参考 "为何 
我的网路连不出去" 一文). 
  接下来就是 config 这两个界面了.假设你的网路环境如下: 
                                                | 
                                                |   +-----+ 
                                                +---| DOS |  140.122.52.236 
  +---------+             eth0 +-----+ eth1     |   +-----+ 
  | gateway |------------------|Linux|----------+           分出来的次子网 
  +---------+                  +-----+          |   +-----+ 
 140.122.52.254            140.122.52.235       +---| Sun | 140.122.52.234 
                               router           |   +-----+ 
                                                | 
                                                可再接多台机器 
  eth0 界面是用来跟外面的网路相连的.你可以用一般的 netconfig 来设定它. 
(若不会的话还是请参考精华区中的文章).  
  我们是利用 Linux 的 Proxy Arp 功能,当外界有封包要送到你的次子网路时, 
Linux 会回应此封包.所以对外界来说你的次子网就是存在的了.因此很重要的一点 
是,你的次子网必须要是从你原来的子网路上割出来的!! 
  以上面的情形为例,如果预估你的次子网约有五、六台左右的机器,你可以决定 
要割出来的次子网的 IP 范围是从 140.122.52.232 -- 140.122.52.239 共 8 个位 
址(一定是 2^n 啦! 不懂吗? 自己想...:) 算一算 netmask 应是 255.255.255.248, 
broadcast 是 140.122.52.239. 於是 eth1 应该这样 config: 
# ifconfig eth1 140.122.52.235 netmask 255.255.255.248 broadcast 140.122.52.23. 
?鲟恶□□□# route add -net 140.122.52.232 netmask 255.255.255.248 gw  
140.122.52.235 eth1 
这样你所有从 140.122.52.232 到 140.122.52.239 的封包都会往 eth1 送.试试看能 
不能从你的次子网 telnet 到 Linux 上? 若可以的话就成功了一大半....^_^ 
  不知你是否注意到,我将 eth0 和 eth1 的 IP address 设为一样! 常有人认为,有 
两块网路卡就要有两个 IP address. 但这是没有必要的! 你可以将两个设为相同!! 
  但是你若想试著直接 telnet 到外面去,就会发现不通! 这是因为尚未设定 arp 
table 的关系.以上面为例,如果你想要 DOS 那台机器可以跨出次子网,就要在 
Linux 上设 arp: 
# arp -s 140.122.52.236 08:00:77:14:00:00 pub 
                        ^^^^^^^^^^^^^^^^^ 
                        ↑  
                        这是你 eth0 界面的 hardware address, 可用 ifconfig查到. 
 
  这时应该就可以直接从 DOS telnet 到外面网路上的机器了! 也可以从外面 telnet 
上来...Oh! Sorry! DOS 是不能 telnet 上去的.... 若是 Linux 当然就没问题啦!! 
你如果在外面用 traceroute 指令查看

来源:http://www.tulaoshi.com/n/20160129/1509922.html

延伸阅读
标签: 电脑入门
步骤一、先是硬件的连接,将路由器和电脑之间的硬件连接安装,具体操作如图所示: 步骤二、连接好路由器和硬件之后,查看到路由器的指示灯是正常状态之后,然后现在对电脑上设置了。依次点击打开win7的开始菜单,然后找到控制面板选项打开它,在点击网络和共享中心-网络连接-本地连接,然后在右击本地连接弹出窗口上点击属性选项,在属性的...
标签: 路由器
1、运用最新Wi-Fi技能 确保网络高速疏通的一种办法即是运用最新的固件。之前咱们介绍过路由器的选购,所以能够 去知道一下。你只需要知道:在WLAN协议中,802.11n的速度显着高于802.11a、802.11b和802.11g。但必定注意,若是想要晋升 速度,必定要一起装备802.11n的网卡和无线路由器。 2、将路由器放置在最佳方位 路...
接口链接 首先要给路由器连接电源就是上面的图片中标注的那个电源接口,把电源适配器插到家用电插口给路由器通电,通电后路由器通常就会启动然后路由器的前端指示灯就会亮起来。 对应接口 首先不要急着插上外部网络,路由器要对系统进行相应的设置才可以使用的。下面县介绍一下如何用网线进行设置,找一根两边都有水晶插头的网...
输入路由器地址 同其他系统一样,首先打开浏览器输入192.168.1.1弹出 输入账号 输入用户名和密码,验证成功后,即会弹出WEB管理界面 选择上网方式 选择上网方式(PPPOE、动态IP地址、静态IP地址),点击下一步 选择运营商 输入运营商提供的帐号及密码,点击下一步 输入无线设置向导密码 进入无线设置向导界面,输入SSID号...
相信很多人对于无线上网这件事,多少有点顾忌,在家或办公的时候,连接一根网线就一切搞定,无须设置什么路由器。但是如果外出,需要电脑办公怎么办?仅仅的拉一根网线已经解决不了问题,况且,也不可能出门随身携带网线啊!那就需要笔者今天为大家做的小小介绍了,如何设置无线路由器,轻松享受网络生活。 上面的两张图片是不...

经验教程

70

收藏

73
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部