📄 0230router.htm
字号:
Routing 则需要『<font color="#000099" face="SimSun">echo 1 > /proc/sys/net/ipv4/if_forward</font>』即可!底下是我的测试环境啦!请注意,这个范例单纯仅只是在测试 Router 的功能罢了!您应该依照您的需求来架设您的Router 呦!那么就将我的联机图示秀出来啰! ^_^<br> <br><hr width="100%"><b><font color="#000066">测试环境说明:</font></b><br> <br>在我的实际测试环境当中,每个组件的内容如下:<br> <ol><li><font color="#000066">Linux 主机</font>:我的 Linux 服务器本身未来亦作为NAT 之用,里面有两张网络卡,一张连接 ADSL 调制解调器,这张对外卡的代号为 eth1,一张连接内部网络,代号为 eth0 ;</li><li><font color="#000066">Hub 连结计算机</font>:Linux 主机对内的网络卡 eth0连接到 Hub 上面,同时,Hub 上面还存在其它四部个人计算机,取两部来进行测试,IP 分别为 192.168.1.11 及 192.168.0.11 ;</li><li><font color="#000066">eth0 对内网络卡</font>:由于对内有两个 C Class 的网域,所以我的网络卡eth0 设定为 192.168.1.2 而另一个虚拟接口 eth0:0 设定为 192.168.0.2 !</li><li><font color="#000066">Client 端的操作系统</font>:我的 client 端的设定方面,在192.168.1.11 使用 Windows 2000 随机版,而 192.168.0.11 则使用 Red Hat 7.3这个咚咚啰!</li></ol> <br>基本的图示如下示意:<br> <br><img src="0230router_files/0230router-3.jpg" nosave="" border="1" height="208" width="525"><br><b><font color="#000066"> </font></b><br>在这个章节当中,我们不谈怎么架设 NAT 主机,那个是后续章节才要提到的东西,所以焦点的地方在于NAT Server 的左边之设定,也就是 eth0 的设定!亦即是内部网域的设定而已!基本上,这个可以视为<a href="http://linux.vbird.org/linux_server/0120intranet.php">局域网络架构</a>那一篇文章的内容延伸啦!在这个地方,我们的网络卡有两个 IP 呦!<br> <br><hr width="100%"><b><font color="#000066">开始设定:</font></b><br> <br>我们就照着上面的步骤一步一步做来吧!<table bgcolor="#000000" border="1" cols="1" width="600"><tbody><tr><td><font size="-1" color="#ffffcc" face="SimSun">1. 设定网络接口,其中eth0 为 192.168.1.2, eth0:0 为 192.168.0.2</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testroot]# </font><font color="#ffff00">cd /etc/sysconfig/network-scripts</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testnetwork-scripts]# </font><font color="#ffff00">vi ifcfg-eth0</font></font><br><font size="-1" color="#ffff00" face="SimSun">DEVICE=eth0</font><br><font size="-1" color="#ffff00" face="SimSun">ONBOOT=yes</font><br><font size="-1" color="#ffff00" face="SimSun">BOOTPROTO=static</font><br><font size="-1" color="#ffff00" face="SimSun">IPADDR=192.168.1.2</font><br><font size="-1" color="#ffff00" face="SimSun">NETMASK=255.255.255.0</font><br><font size="-1" color="#ffff00" face="SimSun">NETWORK=192.168.1.0</font><br><font size="-1" color="#ffff00" face="SimSun">BROADCAST=192.168.1.255</font><br><font size="-1" color="#ffff00" face="SimSun">GATEWAY=192.168.1.2</font><p><font size="-1" face="SimSun"><font color="#ffffff">[root@test network-scripts]#</font><font color="#ffff00">viifcfg-eth0:0</font></font><br><font size="-1" color="#ffff00" face="SimSun">DEVICE=eth0:0</font><br><font size="-1" color="#ffff00" face="SimSun">ONBOOT=no</font><br><font size="-1" color="#ffff00" face="SimSun">BOOTPROTO=static</font><br><font size="-1" color="#ffff00" face="SimSun">IPADDR=192.168.0.2</font><br><font size="-1" color="#ffff00" face="SimSun">NETMASK=255.255.255.0</font><br><font size="-1" color="#ffff00" face="SimSun">NETWORK=192.168.0.0</font><br><font size="-1" color="#ffff00" face="SimSun">BROADCAST=192.168.0.255</font></p><p><font size="-1" face="SimSun"><font color="#ffffff">[root@test network-scripts]#</font><font color="#ffff00">ifupeth0 ; ifup eth0:0</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testnetwork-scripts]# </font><font color="#ffff00">ifconfig eth0; ifconfigeth0:0</font></font><br><font size="-1" color="#ffffff" face="SimSun">eth0     Link encap:Ethernet  HWaddr 00:50:FC:22:9C:57</font><br><font size="-1" color="#ffffff" face="SimSun">         inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0</font><br><font size="-1" color="#ffffff" face="SimSun">         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1</font><br><font size="-1" color="#ffffff" face="SimSun">         RX packets:5975598 errors:0 dropped:0 overruns:0 frame:0</font><br><font size="-1" color="#ffffff" face="SimSun">         TX packets:6267765 errors:0 dropped:0 overruns:0 carrier:0</font><br><font size="-1" color="#ffffff" face="SimSun">         collisions:1331 txqueuelen:100</font><br><font size="-1" color="#ffffff" face="SimSun">         RX bytes:557835433 (531.9 Mb)  TX bytes:2811341821 (2681.1 Mb)</font><br><font size="-1" color="#ffffff" face="SimSun">         Interrupt:10 Base address:0x6100</font></p><p><font size="-1" color="#ffffff" face="SimSun">eth0:0   Link encap:Ethernet  HWaddr 00:50:FC:22:9C:57</font><br><font size="-1" color="#ffffff" face="SimSun">         inet addr:192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0</font><br><font size="-1" color="#ffffff" face="SimSun">         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1</font><br><font size="-1" color="#ffffff" face="SimSun">         Interrupt:10 Base address:0x6100</font><br><font size="-1" color="#ff6666" face="SimSun">瞧!启动两个网络卡啰!这个没问题的啦!可以连通两个网域啰!</font></p><p><font size="-1" color="#ffffcc" face="SimSun">2. 观察路由情况:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testnetwork-scripts]# </font><font color="#ffff00">route</font></font><br><font size="-1" color="#ffffff" face="SimSun">Kernel IP routingtable</font><br><font size="-1" color="#ffffff" face="SimSun">Destination    Gateway         Genmask       Flags Metric Ref    Use Iface</font><br><font size="-1" color="#ffffff" face="SimSun">140.116.142.253*              255.255.255.255 UH    0      0       0 ppp0</font><br><font size="-1" color="#ffffff" face="SimSun">192.168.1.0    *              255.255.255.0   U     0     0        0 eth0</font><br><font size="-1" color="#ffffff" face="SimSun">192.168.0.0    *              255.255.255.0   U     0     0        0 eth0</font><br><font size="-1" color="#ffffff" face="SimSun">127.0.0.0      *              255.0.0.0       U    0      0       0 lo</font><br><font size="-1" color="#ffffff" face="SimSun">default        140.116.142.253 0.0.0.0        UG    0      0       0 ppp0</font><br><font size="-1" color="#ff6666" face="SimSun">嘿!路由表是对的!不用理他也没有关系呢!</font></p><p><font size="-1" color="#ffffcc" face="SimSun">3. 启动 IP FORWARD项目:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root@testnetwork-scripts]#</font><font color="#ffff00"> echo 1 > /proc/sys/net/ipv4/ip_forward</font></font><br><font size="-1" color="#ff6666" face="SimSun">相信吗?竟然只要上面这一行,我们的Linux 就具有 Router 的功能了! ^_^</font><br><font size="-1" color="#ff6666" face="SimSun">如果一切测试都顺利,那么您可以直接将这一行加入/etc/rc.d/rc.local 这个档案中!</font></p><p><font size="-1" color="#ffffcc" face="SimSun">4.1 设定 192.168.1.0那个网域的 client 计算机:</font><br><font size="-1" color="#ffff00" face="SimSun">IP:192.168.1.11</font><br><font size="-1" face="SimSun"><font color="#ffff00">Gateway:192.168.1.2</font><font color="#ff6666"><==极度重要的设定!</font></font><br><font size="-1" color="#ffff00" face="SimSun">netmask:255.255.255.0</font><br><font size="-1" color="#ffff00" face="SimSun">network:192.168.1.0</font><br><font size="-1" color="#ffff00" face="SimSun">broadcast:192.168.1.255</font></p><p><font size="-1" color="#ffffcc" face="SimSun">4.2 设定 192.168.0.0那个网域的 Client 计算机</font><br><font size="-1" color="#ffff00" face="SimSun">IP:192.168.0.11</font><br><font size="-1" face="SimSun"><font color="#ffff00">Gateway:192.168.0.2</font><font color="#ff6666"><==极度重要的设定!</font></font><br><font size="-1" color="#ffff00" face="SimSun">netmask:255.255.255.0</font><br><font size="-1" color="#ffff00" face="SimSun">network:192.168.0.0</font><br><font size="-1" color="#ffff00" face="SimSun">broadcast:192.168.0.255</font><br><font size="-1" color="#ff6666" face="SimSun">如此一来,两个网域之间的沟通将会透过彼此的GATEWAY 而两者的 GATEWAY 都在 Linux 上面,所以自然很容易进行沟通啦!尤其我们已经开启了Routing 的功能!哈哈!OK!没问题!</font></p></td></tr></tbody></table>这样就设定完成了!如何?很容易吧!这样一来,就可以让您的很多计算机的内部网域之网络流量舒缓很多啰!此外,这里必须提出一点说明,因为我上面的范例直接就是要用来作为测试用的,所以搞的比较简单,而且还是在同一块Linux 主机的网络卡上面搞定的!请注意,如果要架设较大流量的 Router 时,请分别以两张网络卡来分隔不同的网域,这样应该会比较好呢!而至于client 端的设定方面可以参考前面几章的说明:<a href="http://linux.vbird.org/linux_server/0120intranet.php#windows">局域网络设定</a>与<a href="http://linux.vbird.org/linux_server/0130internet_connect.php">连上Internet</a>。<br> <br>另外,请特别留意,就如同刚刚前面我们提过的信息来看,开机的时候,<font color="#000066">不论您的alias 的设定为何 ( 是否设定为 ONBOOT ),只要启动 eth0 则相关的 eth0:n 都会被启动</font>!这个时候请特别留意!如果其中有一个IP alias 设定错误的话,那么可能将会导致您的网络整体都会不通!原因多半出在GATEWAY 上面!建议设定完成之后,先将 eth0 整个 shutdown ,然后再启动,亦即『<font color="#000066" face="SimSun">ifdowneth0; ifup eth0</font>』然后再来看看 route 的情况!这样可以避免这次设定成功,下次开机却是不通的情况发生的!<br> <br><hr width="100%"><b><font color="#000066">测试 Router 工作:</font></b><br> <br>好了,不可免俗的,我们可要好好的测试一下我们的 router 啰!如何测试呢?很简单呀!<br> <ol><li><font color="#000099">在 192.168.1.11 这个 client 端,先联机到 192.168.1.2试看看能否联机;</font></li><li><font color="#000099">在 192.168.1.11 这个 client 端测试是否可以联机到192.168.0.2 这个 Server 端的另一个网络连接接口;</font></li>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -