|
|
Internet
|
|..[WAN IP on internet]
adsl##########################################################
|..[LAN IP=192.168.1.254, SUBNET MASK=255.255.255.0, DHCP server=on, external gateway]
|
|--*A*[IP=192.168.1.?, SUBNET MASK=255.255.255.0, GATEWAY=192.168.1.254]
|
|
|..[IP=192.168.1.64, (assigned by ADSL router), SUBNET MASK=255.255.255.0, GATEWAY=192.168.1.254]
router2########################################################
|..[subLAN IP=192.168.0.1, SUBNET MASK=255.255.255.0, DHCP server=on, GATEWAY=192.168.1.254]
|
|--*S*[IP=192.168.0.?, SUBNET MASK=255.255.255.0, GATEWAY=192.168.0.1]
|--*L*
问题:一台Arch Linux接到上图*S*处/*L*处, 想让其访问Internet, 不行, 需要解决.
背景:
有个adsl router接入Internet, 简称为adsl
adsl出场预设LAN IP地址192.168.1.254, 作为整个LAN的网关, dhcp服务开动,
使用internet接入商的dns.
两台机器, ArchLinux和WinXP, 都可以直接通过adsl访问Internet[从上图*A*接入]
现加入另一router称为2, router2接到adsl上.
在adsl来看, router2的IP为192.168.1.64, 使用网关192.168.1.254
router2自己作为网关, 在*S*/*L*两处提供接入, 在*S*/*L*处看来, router2的IP为192.168.0.1
WinXP接入router2可以访问Internet[上图*S*处接入]
但Arch Linux接入router2就不能访问Internet[同是*S*处接入]
Arch Linux在接入router2的状况下[*S*处], 可以ping通router2,
但是ping不通adsl.
如果WinXP也接入router2[从*L*处], Arch Linux可以ping通WinXP.
如果WinXP接入adsl[从*A*处], Arch Linux则ping不通WinXP.
Arch Linux在接入router2的状况下[*S*处], 试过静态ip, 也试过dhcp, 都不行.
而WinXP在接入router2的状况下[*S*处], 使用静态ip和dhcp, 都可以接通Internet.
将Arch Linux设置成router2的dmz, 也不行.
而, 将WinXP设成router2的dmz, 则adsl上的电脑[*A*处]可通过[192.168.1.64]直接访问WinXP, 没有任何问题.
ArchLinux接入router2[*S*处]的routing table如下
#route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
不知道为什么.
**...自己解决了
/etc/rc.d/network restart竟然不管用
必须重启...
**...浪费我很多很多时间啊 |
|