频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

如何用Linux安装TCP/IP路由器

作者: 出处:ChinaITLab  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2005-12-12 14:55
关 键 词:Linux  路由器  安装  TCP
阅读提示:介绍如何用Linux安装TCP/IP路由器的步骤。
Linux 当 Router 的先决条件
要以 Linux 当 Router,首先必须确认你的 Linux Kernel 中有支援 IP Forwarding
的功能,也就是在 make Kernel 时,要选择 IP Forwarding 的选项。
Router 分别以两块网路卡连接 Class B net 与 Subnet,所以让
Linux 在开机的时候就要抓到这两块网路卡,成了一先决的条件。其方法是在
/etc/lilo。conf 中加入
append="ether=irq_0,io_port_0,eth0 ether=irq_1,io_port_1,eth1"
後,再值行 lilo C lilo。conf,之後再重新开机,应该就可以抓到两块网路卡了。
要检查是否有抓到两块网路卡的话,可以看 /proc/net/dev 档中是否有 eth0 和
eth1 两个网路介面,或是值行 ifconfig,看是否有 eth0 和 eth1 两个网路介面,
若是没有的话,有可能是你的 Kernel 没有支援那种网路卡,那就必须再重新
make Kernel,将那种网路卡的选项包含进来。
如何规划 Subnet 的 IP address 
Router 的两个网路介面分别连接两个 net,且各有其 IP address,
eth0=140.115.50.67 为连接 Class B net 的 IP address
eth1=140.115.50.161 为连接 Subnet 的 IP address
现在我们就要来看看如何规划 Subnet.
首先我们要先决定 Subnet 中有几台机器,也就是要划分几个 IP address 於 Subnet
中,我以 Subnet 中有 32 台机器为例加以说明.因此 Subnet 之 IP 范围为
140.115.50.160 ~ 140.115.50.191,WHY??
140.115.50.160 ===> 140.115.50.101 00000
^^^^^^^^^^^^^^ ^^^^^
network address host address
140.115.50.191 ===> 140.115.50.101 11111
^^^^^^^^^^^^^^ ^^^^^
network address host address
其 netmask 皆为
255.255.255.224 ===> 255.255.255.111 00000
^^^^^^^^^^^^^^^ ^^^^^
其 broadcast 皆为
140.115.50.191 ===> 140.115.50.101 11111
^^^^^^^^^^^^^^ ^^^^^
host address 有 5 个 bit,因此可以决定 2^5 = 32 台机器,当然同理你也可以用
140.115.50.96 ~ 140.115.50.127 为你的 Subnet address,只要不和别人相冲就好了.
所以我们可以将 Subnet 的网路设定做一个整理:
IP address = 140.115.50.160 ~ 140.115.50.191
netmask = 255.255.255.224
broadcast = 140.115.50.191
network address = 140.115.50.160
如何设定 Router 的网路位址
决定好 Subnet 的 IP address 後,接下来就是 Config eth0 和 eth1 这两个
网路介面,於 /etc/rc.d/rc,inet1 中加入
ifconfig eth0 140.115.50.67 netmask 255.255.0.0 broadcast 140.115.255.255
ifconfig eth1 140.115.50.161 netmask 255.255.255.224 broadcast 140.115.50.191
後,再执行 rc.inet1 或重新开机.可以利用 ifconfig 指令来检查设定是否正确,
以下就是 Router 值行 ifconfig 的输出:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU:2000 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0
TX packets:24 errors:0 dropped:0 overruns:0
eth0 Link encap:10Mbps Ethernet HWaddr 04:00:23:53:90:21
inet addr:140.115.50.67 Bcast:140.115.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:107061 errors:0 dropped:0 overruns:0
TX packets:22060 errors:0 dropped:0 overruns:0
Interrupt:5 Base address:0x290 Memory:d0000d4000
eth1 Link encap:10Mbps Ethernet HWaddr 12:30:51:47:23:85
inet addr:140.115.50.161 Bcast:140.115.50.191 Mask:255.255.255.224
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:107061 errors:0 dropped:0 overruns:0
TX packets:22060 errors:0 dropped:0 overruns:0
Interrupt:6 Base address:0x350 Memory:d8000db000
如何设定 Router 的 Kernel Routing table
网路位址设定好後,接下来就是要设定 Kernel Routing table,当 Router 收到一个
Packet 时,会依照 Packet 中的目的位址去 Kernel Routing table 比对,而决定该往
那一个网路介面送,所以 Kernel Routing table设错了,Packet 就无法由正确的网路介
面送到目的地.
Kernel Routing table 的设定亦加入於 /etc/rc.d/rc.inet1
route add net 140.115.0.0 netmask 255.255.0.0 eth0
route add net 140.115.50.160 netmask 255.255.255.224 eth1
route add default gw 140.115.1.254 metric 1
^^^^^^^^^^^^^^^^^^^^^^^^^
此为通往校外的 Gateway
後,再执行 rc.inet1 或重新开机,可以利用 route 指令来检查设定是否正确,以下就是
Router 值行 route 的输出:
Destination Gateway Genmask Flags MSS Window Use Iface
140.115.50.160 * 255.255.255.224 U 1436 0 234 eth1
140.115.0.0 * 255.255.0.0 U 1436 0 29125 eth0
127.0.0.0 * 255.0.0.0 U 1936 0 34 lo
default 140.115.1.254 * UG 1436 0 79 eth0
如何设定 Subnet 中机器的网路位址与 Kernel Routing table
Subnet 中的机器其设定方法较 Router 简单.其只有一张网路卡,即 eth0,所以在
机器 ds170 的 /etc/rc.d/rc.inet1 中加入
ifconfig eth0 140.115.50.170 netmask 255.255.255.224 broadcast 140.115.50.191
route add net 140.115.50.160 netmask 255.255.255.224 eth0
route add default gw 140.115.50.161 metric 1
^^^^^^^^^^^^^^^^^^^^^^^^^^
此我们将 Gateway 设为 Router 的 eth1 IP address
设定Proxy ARP 来连通 Subnet
以上设定完成後,你就可以由 Router 连上 ds170,亦可以由 ds170 联上 Router, 但是
若要由 ds170 直接连到外面 Class B net 上之机器,如 dslab,则无法直接连通, 因为
ds170 直接将 package(注意是资料不是ARP) 送到 router(可由 static routing
table 中决定),router 再帮你在 class B network 中送 ARP,所以 dslab 会听到此
ARP ,但当 dslab 要将 ARP 送回来时,由於 router 或 gateway 会将 broadcast 和
multicast 的 package 挡下来,而不会forwarding,所以说 dslab 回应的 ARP 无法让
ds170 所收到 ,於是我们需在 Router上设定 Proxy ARP,其功能就是代 subnet 中的机
器回应 class B 中机器所 broadcast 的 ARP,让 class B 中要送往 subnet 的
package 先送到 router, 之後 router 再帮其送往 subnet 中的机器.
所以应该在 Router 的 /etc/rc.d/rc.inet1 中加入
arp s 140.115.50.170 04:00:23:53:90:21 pub
^^^^^^^^^^^^^^^^^
此为 Router eth0 介面的 hardware address
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Windows XP远程桌面连接图解(.. (查看30702次)
·Windows Vista 初步 (查看20844次)
·Solaris基础知识入门 (查看19036次)
·Linux的安装 (查看16857次)
·Windows操作系统安装 (查看15831次)
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有