注意:如果客户端设备(
computer B
在此示例中)要通过网关计算机获得Internet,则可能仍需要配置名称服务器解析。这里没有解释(网关不一定服务于互联网)。
我试图了解网络路由的基础知识。
因此,我正在尝试使用LAN(我现在不需要Internet,仅需要LAN通信)。
我知道网络配置问题是一件相当复杂的事情,但是我只是想使一台计算机(例如A)充当另一台计算机(例如B)(都运行Ubuntu Linux)的网关。
我只需要B就能到达路由器,那才是A可以到达的。
就是这种情况:
Router for computer A --> 192.168.0.1
Computer A - eth0 --> 192.168.0.2
Computer A - eth1 --> 192.168.1.1
Computer B - eth0 --> 192.168.1.2
计算机A与路由器的连接良好。
计算机A和B连接罚款(平,SSH ...等)之间。
计算机B 无法到达计算机A 的路由器。
我在想,只要将B计算机A添加为默认网关并在A上激活IP转发,就可以使B能够到达A的路由器:
luis@ComputerB:~$ sudo route add default gw 192.168.1.1
luis@ComputerB:~$ sudo routel
target gateway source proto scope dev tbl
127.0.0.0 broadcast 127.0.0.1 kernel link lo local
127.0.0.0 8 local 127.0.0.1 kernel host lo local
127.0.0.1 local 127.0.0.1 kernel host lo local
127.255.255.255 broadcast 127.0.0.1 kernel link lo local
192.168.1.0 broadcast 192.168.1.2 kernel link eth0 local
192.168.1.2 local 192.168.1.2 kernel host eth0 local
192.168.1.255 broadcast 192.168.1.2 kernel link eth0 local
default 192.168.1.1 eth0
169.254.0.0 16 link eth0
192.168.1.0 24 192.168.1.2 kernel link eth0
在计算机A(中间网关)上:
root@ComputerA:~$ echo 1 > /proc/sys/net/ipv4/ip_forward
计算机B仍然可以ping通计算机A,但是A的路由器无法回答:
luis@ComputerB:~$ ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
^C
(无回应)
这是使运行Linux的计算机以简单方式充当另一台计算机的网关的正确程序吗?