Ber*_*ard 7 networking linux ubuntu
如何连接两个子网?
我无法在这些子网之间ping或traceroute。
Vbox1 子网 ifconfig:
eth0 Link encap:Ethernet HWaddr 08:00:27:f1:68:9e
inet addr:192.168.1.65 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fef1:689e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:207703 errors:0 dropped:0 overruns:0 frame:0
TX packets:41701 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:45480669 (45.4 MB) TX bytes:4855362 (4.8 MB)
eth1 Link encap:Ethernet HWaddr 08:00:27:79:02:34
inet addr:10.0.3.15 Bcast:10.0.3.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe79:234/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:913 errors:0 dropped:0 overruns:0 frame:0
TX packets:1335 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:129887 (129.8 KB) TX bytes:150700 (150.7 KB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:15106 errors:0 dropped:0 overruns:0 frame:0
TX packets:15106 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:949613 (949.6 KB) TX bytes:949613 (949.6 KB)
Run Code Online (Sandbox Code Playgroud)
和 p4(因为我无法从这里访问那台机器,所以我给出了一个手动输入的摘要):
etho : only inet6 addr
lo : inet addr : 127.0.0.1 Mask : 255.0.0.0
venet0 : only inet6 addr
vmbr0 : inet addr : 192.168.0.70 BCast : 192.168.0.255 Mask : 255.255.255.0
Run Code Online (Sandbox Code Playgroud)
两个子网连接成功。ISP切换后,我无法再访问 p4 子网。所以有些事情发生了变化,但我希望这应该是一个小问题,因为在使用子网之前它工作成功。
我已经阅读了两个子网中的虚拟机,但建议使用VLAN。但是根据对流量、VLAN 或子网进行分段的最佳方式?VLAN作用于网络二层,子网作用于网络三层。应该使用三层子网。
所以我应该在这些子网之间有一个网关。
根据Ubuntu KB -我添加到 vbox1 的网络配置:
sudo route add default gw 10.10.14.81 eth1
Run Code Online (Sandbox Code Playgroud)
但它会产生:
SIOCADDRT: Network is unreachable
Run Code Online (Sandbox Code Playgroud)
搜索返回Ubuntu 隧道或网关主机地址和网络地址之间的差异。
供您参考,vbox1 是Ubuntu 13.04(Raring Ringtail ),p4 是Debian 7.5(Wheezy)。
我现在卡住了。
将 vbox1 移动到不同的子网:将其在 eth0 上的 IP 地址从 192.168.1.65 更改为 192.168.0.65(或子网 192.168.0.0/24 中的其他一些空闲 IP 地址)。然后,vbox1 知道通过哪个接口 p4 (192.168.0.70) 可以访问(--> 通过 eth0)。然后 vbox1 会自动调整其路由表。现在您应该可以从 vbox1 访问 p4。如果要从 192.168.1.0/24 中的任何其他客户端访问 p4,则需要将 vbox1 配置为路由器(即可以将到达 eth1 [192.168.1.0/24] 的数据包转发到 eth0 [192.168.0.0/ 24](反之亦然)。这就是“连接两个网络”的意思)。
如何做到这一点取决于您使用的发行版。基本上,您需要将“1”写入设备文件/proc/sys/net/ipv4/ip_forward
。
喜欢 echo 1 > /proc/sys/net/ipv4/ip_forward
但是,这仅在当前引导周期内有效。重启后设置消失。
如果您想永久执行此操作,则必须将此行放入某个启动脚本中。如果您使用的是 Ubuntu,您也可以将其放入 /etc/sysctl.conf (我不确定其他发行版)。取消注释该行net.ipv4.ip_forward=1
。如果你想立即生效,你也可以发出sudo sysctl -w net.ipv4.ip_forward=1
而不是上面提到的“echo”。
请。另请参阅askubuntu.com 上的此链接。
归档时间: |
|
查看次数: |
2083 次 |
最近记录: |