Ubuntu Enable Ip Forward
在家做个小实验,通过SDM访问路由设备,由于在用的PC性能很低,开2个Router(模拟器)就不行了,所以打算用我的服务器。
Topology如下所示:
R1(.1) ——(.2) Server Ubuntu (.102)——- TP-Link ——-(.101) Win XP
1. 在R1上设置默认路由并指端口(防止ubuntu无法代理ARP)
2. Server跟Win XP在同一局域网中。
3. R1和Server在同一网段10.1.1.0,Server和Win XP在同一网段192.168.3.0
4. 在Win XP上用“route add”命令加到10.1.1.1的路由,出口为192.168.3.102.
结果:
发现WinXP只能ping通10.1.1.2
经查找发现,数据从R1到达Server后就停止了,因为PC默认情况下是不能转发流量的。现在需要开启Server的转发流量功能。步骤如下:
1. 确认路由转发是否开启(“0”是关闭)
[email protected]:~# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 0
[email protected]:~# more /proc/sys/net/ipv4/ip_forward
0
2. 开启路由转发功能
[email protected]:~# sysctl net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
OR
r[email protected]:/etc# echo 1 >/proc/sys/net/ipv4/ip_forward
[email protected]:~# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
[email protected]:~# more /proc/sys/net/ipv4/ip_forward
1
开启后,发现Win XP能ping通R1,反过来就不行,后来排障发现时Xin XP的KAV在作怪,关闭后,就都OK了:)
在此文中我只介绍了如何在Linux中开启Ip Forward的功能,在Windows中也是可以开启的,但是比Linux麻烦点,以下是Windows的官方文档:
如何在 Windows XP 中启用 TCP/IP 转发:
http://support.microsoft.com/kb/315236
HOW TO:在 Windows Server 2003 中启用 TCP/IP 转发:
http://support.microsoft.com/kb/323339/zh-cn