我已将 Centos 6.2 配置为网关机器,它有两个接口
eth0 的 IP 地址由 isp 116.xxx(静态)提供,eth1 的 IP 地址为 192.168.0.1(未配置 dns、dhcp,仅在路由器盒中启用了 ip 转发)。
客户端机器配置为:
ip address 192.168.0.5 and gateway 192.168.0.1
我重新启动 centos 后,iptables 规则并没有全部消失。
遵循的步骤
路由器机器:两个接口eth0:116.XXX(静态ip)eth1:192.168.0.1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A 转发 -i eth0 -j 接受
将 iptable 规则保存在/etc/sysconfig/iptables
Selinix 已被禁用。
/etc/sysctl.conf 上完成的更改
sysctl -w net.ipv4.ip_forward=1
但是当系统重启时一切都消失了。
答案1
当您说您启用了 IP 转发时,您是否在 sysctl.conf 中进行了设置,以便它在重启后仍然有效?
通过 sysctl -w net.ipv4.ip_forward=1 或 echo 1 >/proc/sys/net/ipv4/ip_forward 进行设置仅适用于当前运行时,并且它会在启动时重置为默认值或 /etc/sysctl.conf 中的内容。
还要确保您的 iptables 规则已保存在 /etc/sysconfig/iptables 中