手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>操作系统>Linux>列表

以Linux做路由器的问题

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

完整, 希望各位看官不吝赐教. :) 
 
=============================================================================== 
 
下面就来讲用 Linux 做路由的方法啦. Linux 做路由是很容易的, 不过要分清不同的情况,  
很多人在配置路由时弄错了情况,以至于费了很大劲也弄不出来. 我把常见的情况分为3种: 
 
1. 只有有限的 ip 资源, 希望通过一个合法 ip 代理出多个内部 ip 的情况 
 
        这个使用 Ip Masquerade 就可以了, 具体方法可以参看 Ip Masquerade 
        的中文How-To 或 raner 写的 Linux做路由器(精华区中) 
 
2. 为了减轻局域网的负担, 把几个合法 ip 单独割出来, 做一个小子网的情况 
 
        这种情况, 就是精华区中那篇最老的 Linux做路由器 的文章了, 是那个 
        台湾人写的那篇. 这种情况是最简单的, 只要在内核中编译上网卡的驱动 
        和Ip Forwarding 再正确算出 netmask , 写静态路由表和arp表即可. 
 
        想补充两句的是关于静态路由表和arp表的问题, 一般人只是照者去做了 
        没有想为什么, 其实弄清为什么还是对配置路由器和处理故障很有帮助的 
        这里增加的静态路由表的作用是告诉从外面来要进子网的包路由的方向 
        增加静态arp表是因为这个子网本来是从大的子网划出去的, 所以本子网 
        内传送包以及从大子网的外面来包的时候, 包的源地址广播发出的arp申请 
        需要回应, 这个工作本来是由那个IP的机器来完成的, 可是现在隔了个路由 
        器, arp请求传不过去, 而且也需要路由器来应答, 以使得源地址把数据传送 
        到路由器上. 
 
3. 想用linux来替代以前的正常的路由器 
 
        这种情况大多是因为, 硬件路由价格昂贵, 软路由的功能上或性能上不能满足 
        要求. 这种情况以前没有文章提到过, 其实这倒是最简单的一种情况. 
 
        这时只要问清楚运行的路由协议就可以了,  
 
        如果是静态路由的话, 先设置好你的网卡, 使得你做路由的机器可以ping通外面 
        和里面子网, 这部分slackware和redhat的设置各不相同, redhat比较简单, 只要 
        用 netconfig 加上就可以, 而slackware对第一块网卡用netconfig命令, 对后面 
        的网卡则要手工写一下  
 
                ifconfig $IF1 $IPADDR1 netmask $NETMASK1 broadcast $BROADCAST1 
 
                route add -net $NETWORK1 netmask $NETMASK1 gw $IPADDR1 
 
        命令. 这时候路由就算配置好了, 不过要注意的是, redhat 上的 Ip Forwarding 
        的开关缺省是关上的, 需要在 netconfig 里面设为打开. 如果没有装 X 的东西, 
        那么也可以手工修改 /etc/sysconfig/network 文件和  
        /etc/sysconfig/network-script目录下的 if-eth? 等文件 
 
        如果是动态路由的话要分情况, rip 是最好弄的, 只要起个 routed 就可以了, 
        如果不行就给 routed 加上 -g -s 参数让routed去广播路由表就可以了. 
 
        如果是其他的情况就要配置 gated 了, gated 是一个专用的, 支持多路由协议的 
        高效的路由软件, 其缺点是配置麻烦, 如果我再写下去就会吃了中午饭了, 所以呢 
        有能力的就去看man和文档, 没有时间和精力去看的呢 先推荐一本书  
 
                TCP/IP Administration 
 
        有中文译本, 内容是老点, 不过还值得收藏, 里面对路由问题讲得很清楚. 如果连 
        书都不想买, 那只好等我有空再写啦... 
 
 
====================================================================== 
 
选择什么发行版本来实现路由器呢? 通常的可以使用 slackware 和 redhat,  
基本上对redhat不是非常清楚的用户不要使用redhat, 因为要用得好还是很 
麻烦的, 选择要安装的软件就是很讨厌的事情, redhat 的东西常常会有hole 
如果对系统不熟还是不要用.  slackware 很简单( 甚至可以说很单纯 :), 很 
适合对系统不太熟悉的用户使用.  
 
当然这些大的distribution拿来做route当然是可以的啦, 不过呢, 我可以给 
大家推荐一个很小很小的东西, 就是 LRP( Linux Route Project ), 这个东西 
还是很酷的, 是一个微型的debian, 到底有多小呢?  只有一张软盘!!! 不要看 
它小, 可是功能很全, 而且设置很简单, 基本上不懂 linux 也可以设置 :) 
大家可以看看. url 是: 
 
http://www.psychosis.com/linux-router/ 
 
大家也可以在 ftp://ftp.gb.com.cn/pub/incoming/unix/linux-router 
下找到它最新的的 2.9.2 版 

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!