📄 00000002.htm
字号:
後,再执行 rc.inet1 或重新开机.可以利用 ifconfig 指令来检查设定是否正确, <BR>以下就是 Router 值行 ifconfig 的输出: <BR> <BR>lo Link encap:Local Loopback <BR> inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0 <BR> UP BROADCAST LOOPBACK RUNNING MTU:2000 Metric:1 <BR> RX packets:0 errors:0 dropped:0 overruns:0 <BR> TX packets:24 errors:0 dropped:0 overruns:0 <BR> <BR>eth0 Link encap:10Mbps Ethernet HWaddr 04:00:23:53:90:21 <BR> inet addr:140.115.50.67 Bcast:140.115.255.255 Mask:255.255.0.0 <BR> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <BR> RX packets:107061 errors:0 dropped:0 overruns:0 <BR> TX packets:22060 errors:0 dropped:0 overruns:0 <BR> Interrupt:5 Base address:0x290 Memory:d0000-d4000 <BR> <BR>eth1 Link encap:10Mbps Ethernet HWaddr 12:30:51:47:23:85 <BR> inet addr:140.115.50.161 Bcast:140.115.50.191 Mask:255.255.255.224 <BR> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 <BR> RX packets:107061 errors:0 dropped:0 overruns:0 <BR> TX packets:22060 errors:0 dropped:0 overruns:0 <BR> Interrupt:6 Base address:0x350 Memory:d8000-db000 <BR> <BR>---------------------------------------------------------------------------- <BR> <BR>如何设定 Router 的 Kernel Routing table <BR> <BR>网路位址设定好後,接下来就是要设定 Kernel Routing table,当 Router 收到一个 <BR>Packet 时,会依照 Packet 中的目的位址去 Kernel Routing table 比对,而决定该往 <BR>那一个网路介面送,所以 Kernel Routing table设错了,Packet 就无法由正确的网路介 <BR>面送到目的地. <BR> <BR>Kernel Routing table 的设定亦加入於 /etc/rc.d/rc.inet1 <BR> <BR> route add -net 140.115.0.0 netmask 255.255.0.0 eth0 <BR> <BR> route add -net 140.115.50.160 netmask 255.255.255.224 eth1 <BR> <BR> route add default gw 140.115.1.254 metric 1 <BR> ^^^^^^^^^^^^^^^^^^^^^^^^^ <BR> 此为通往校外的 Gateway <BR> <BR>後,再执行 rc.inet1 或重新开机,可以利用 route 指令来检查设定是否正确,以下就是 <BR>Router 值行 route 的输出: <BR> <BR>Destination Gateway Genmask Flags MSS Window Use Iface <BR>140.115.50.160 * 255.255.255.224 U 1436 0 234 eth1 <BR>140.115.0.0 * 255.255.0.0 U 1436 0 29125 eth0 <BR>127.0.0.0 * 255.0.0.0 U 1936 0 34 lo <BR>default 140.115.1.254 * UG 1436 0 79 eth0 <BR> <BR>---------------------------------------------------------------------------- <BR> <BR>如何设定 Subnet 中机器的网路位址与 Kernel Routing table <BR> <BR>Subnet 中的机器其设定方法较 Router 简单.其只有一张网路卡,即 eth0,所以在 <BR>机器 ds170 的 /etc/rc.d/rc.inet1 中加入 <BR> <BR> ifconfig eth0 140.115.50.170 netmask 255.255.255.224 broadcast 140.115.50.191 <BR> <BR> route add -net 140.115.50.160 netmask 255.255.255.224 eth0 <BR> <BR> route add default gw 140.115.50.161 metric 1 <BR> ^^^^^^^^^^^^^^^^^^^^^^^^^^ <BR> 此我们将 Gateway 设为 Router 的 eth1 IP address <BR> <BR>---------------------------------------------------------------------------- <BR> <BR>设定 Proxy ARP 来连通 Subnet <BR> <BR>以上设定完成後,你就可以由 Router 连上 ds170,亦可以由 ds170 联上 Router, 但是 <BR>若要由 ds170 直接连到外面 Class B net 上之机器,如 dslab,则无法直接连通, 因为 <BR>ds170 直接将 package(注意是资料不是ARP) 送到 router(可由 static routing <BR>table 中决定),router 再帮你在 class B network 中送 ARP,所以 dslab 会听到此 <BR>ARP ,但当 dslab 要将 ARP 送回来时,由於 router 或 gateway 会将 broadcast 和 <BR>multicast 的 package 挡下来,而不会forwarding,所以说 dslab 回应的 ARP 无法让 <BR>ds170 所收到 ,於是我们需在 Router上设定 Proxy ARP,其功能就是代 subnet 中的机 <BR>器回应 class B 中机器所 broadcast 的 ARP,让 class B 中要送往 subnet 的 <BR>package 先送到 router, 之後 router 再帮其送往 subnet 中的机器. <BR> <BR>所以应该在 Router 的 /etc/rc.d/rc.inet1 中加入 <BR> <BR> arp -s 140.115.50.170 04:00:23:53:90:21 pub <BR> ^^^^^^^^^^^^^^^^^ <BR> 此为 Router eth0 介面的 hardware address <BR> <BR>---------------------------------------------------------------------------- <BR> <BR>Good Luck ! <BR> <BR>如果您有任何意见或指教,可以直接写信给我. <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -