实例 用Linux操作系统构建的路由器

上一篇 / 下一篇  2008-04-13 14:11:47 / 个人分类:Linux

网络结构如图,Linux路由器这台计算机标识为A,它与三个网段相连,192.168.1.0/24,10.0.0.0/8,172.16.0.0/16.爱踢博客社区6O:h6Z"t0^_a zQ
A计算机必须拥有三块网卡,分别与三个网段相连。
To6[B)k0x%E0假设:
\5AEJW0|7R0eth0与172.16.0.0相连,爱踢博客社区_JW:{%o[kfV'}K
eth1与10.0.0.0相连,
u"CI5],V%Z]0eth2与192.168.1.0相连。爱踢博客社区M Q*| k6Pp~%Y
首先来配置eth0.给这个网络接口分配地址172.16.1.1,运行下列命令:
a7N"K1L9{:v6if0# ifconfig eth0 172.16.1.1 netmask 255.255.0.0

为了使这个地址不再计算机重新启动后消失,编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,修改为如下格式:
!c!ux [{V{ y ?W0DEVICE = eth0
N"L g9m}U0ONBOOT = yes爱踢博客社区F5I/}n8eX U J
BROADCAST = 172.16.255.255
nGl gsw0NETWORK = 172.16.0.0爱踢博客社区U$m9k#hMo(uu
NETMASK = 255.255.0.0爱踢博客社区6]LS9_(mP4r
IPADDR = 172.16.1.1爱踢博客社区/|2pq ezz[L6]4} x&D
增加一条静态路由:爱踢博客社区!Kz:^c"_6i-v
# route add -net 172.16.0.0 netmask 255.255.0.0爱踢博客社区qK"P&b:T,{!J*q[W
这样系统中就增加了一条静态路由:
#G,I$u7r!Dyy+i0# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface爱踢博客社区$G$B;|K&d'Sp r
172.16.0.0 * 255.255.0.0 U 0 0 0 eth0
)G+IYEY,a0接下来,配置eth1,eth1与10.0.0.0网段相连,分配给它的地址是10.254.254.254,使用ifconfig命令为它配置参数:爱踢博客社区G+f~H1u&j2X
# ifconfig eth1 10.254.254.254 netmask 255.0.0.0爱踢博客社区U$c4z o \9tFo9h ~
同样编辑/etc/sysconfig/network-scripts目录下的ifcfg-eth1文件,内容如下:
2O:MEfB0DEVICE = eth1爱踢博客社区/[^7n)WDt'd
ONBOOT = yes爱踢博客社区R7CJHuE&QU9s X
BROADCAST = 10.255.255.255
#n Fa7]-[:j,L0NETWORK = 10.0.0.0爱踢博客社区-zI'LNVILo(g
NETMASK = 255.0.0.0
0~w E2MC J#M G e#A0IPADDR = 10.254.254.254
6k(hP'f#@ {r0再增加一条静态路由:爱踢博客社区k2nMOt
# route add -net 10.0.0.0 netmask 255.0.0.0爱踢博客社区.G:e6x.BCZ)_
网络中当前的路由表为
3w O Z;}D7G%Q[0# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface
&lWA { EaB0172.16.0.0 * 255.255.0.0 U 0 0 0 eth0
+inm;~K4oG:Q010.0.0.0 * 255.0.0.0 U 0 0 0 eth1爱踢博客社区b BDbw
最后配置eth3,它连接192.168.1.0网段,分配的IP地址是192.168.1.254,执行下列命令:爱踢博客社区 ?6@wHb
# ifconfig eth2 192.168.1.254 netmask 255.255.255.0爱踢博客社区4h2q4O&m"kjC(J4H Q
编辑/etc/sysconfig/network-scripts目录下的ifcfg-eth2文件,内容如下:
9zLS.wAk~D0DEVICE = eth2爱踢博客社区'O6aGbqc/R_@k
ONBOOT = yes爱踢博客社区d ^#G9g S(u:F Yk
BROADCAST = 192.168.1.255爱踢博客社区$^!j7c3[|'f
NETWORK = 192.168.1.0爱踢博客社区p:zcY#V
NETMASK = 255.255.255.0爱踢博客社区oxN7FG)N-f)mw n
IPADDR = 192.168.1.254爱踢博客社区q ] Q _ b8X,{ hP
再增加一条静态路由:
*F{ Yj#fEh~m4kX`0# route add -net 192.168.1.0 netmask 255.255.255.0爱踢博客社区;Gm4o!? }/R
这样网络中就有三条静态路由记录了: # route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface
\$CL5G&An$i[+h x0172.16.0.0 * 255.255.0.0 U 0 0 0 eth0爱踢博客社区4y a:tP*c3|c ?O;W
10.0.0.0 * 255.0.0.0 U 0 0 0 eth1爱踢博客社区_!A7@/Og8A0z!E
192.168.1.0 * 255.255.255.0 U 0 0 0 eth2爱踢博客社区LKB'Lsq
还要为系统增加一条缺省路由,因为缺省的路由是把所有的数据包都发往它的上一级网关(假设地址是172.16.1.100,这个地址依赖于使用的网络而定,由网络管理员分配),因此增加如下的缺省路由记录:爱踢博客社区"p5{ v,p0{4Nkfk"MN:e
# route add default gw 172.16.1.100
$U/}0Dj9c YN*O/I1R0这样系统的静态路由表建立完成,它的内容是
E!}e[X*E;l0# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface
9GDO4\{0172.16.0.0 * 255.255.0.0 U 0 0 0 eth0爱踢博客社区&q:|,x5VPm&e Uv
10.0.0.0 * 255.0.0.0 U 0 0 0 eth1
%\7v b'_VB8@(B2e0192.168.1.0 * 255.255.255.0 U 0 0 0 eth2
#J/No["Ri` F0default 172.16.1.100 0.0.0.0 UG 0 0 0 eth0
&Rv+JN:fP"Wj0最后一步,要增加系统的IP转发功能。这个功能由/proc/sys/net/ipv4目录下的ip_forward文件控制,执行如下命令打开ip转发功能:
va`$gU-^)w8Q0echo 1 > /proc/sys/net/ipv4/ip_forward爱踢博客社区:Rb \&zk
这样我们的路由器基本上是配置好了
O I*x w0f0测试路由器的工作情况。爱踢博客社区(L7l)cMfh1R-} d_/T
在linux路由器上测试:爱踢博客社区w] l%R{ O
第一步,测试自身网络是否工作正常,执行如下命令
._KmPr w0ping 172.16.1.1
`(I(]c c\U0ping 192.168.1.254
)OX/pnuJ0ping 10.254.254.254爱踢博客社区R:lRl&Z3z t
如果这些地址都能ping通,则第一步通过,否则查找原因,排除错误。爱踢博客社区m X1R/i W
第二步,测试与上一级网关之间是否连通
jn;B4G k'CA0ping 172.16.1.100爱踢博客社区B qY2AO'x
如果通畅,则正常;否则查找错误原因。
j;zo jO)tl0在192.168.1.0网络内测试,假设它的地址是192.168.1.1,
ydv#K KAM0第一步,测试自身是否工作正常, ping 192.168.1.1
tVGPuh0第二步,测试与网关是否连通, ping 192.168.1.254
TF0ks0h5m:m0第三步,测试与10.254.254.99是否连通,这是10.0.0.0网段内的一台计算机 ping 10.254.254.99
uE)lMB_e0第四步,测试与外网地址是否连通 ping 172.16.1.100 如果连通了,表示路由器配置正确,否则,查找原因,并排除之。 

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar