我使用 Linux Centos 6.3 作为具有 NAT 的 Internet 网关。我想允许特定主机访问 Internet,但我不想使用它的 IP 地址,因为它可能会从 DHCP 服务器获取新的 IP 地址。相反,我想使用特定 MAC 地址的规则。
我使用了以下方法,但是没有效果:
iptables -t nat -A POSTROUTING -o $INTERNETDEVICE -j MASQUERADE
iptables -A INPUT -i $INTERNETDEVICE -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -d 10.1.1.0/24 -j ACCEPT
iptables -A FORWARD -m mac --mac-source {my mac address} -j ACCEPT
其中 INTERNETDEVICE 是互联网的 ppp 设备
如果我输入的是第四条规则
iptables -A FORWARD -s 10.1.1.39 -j ACCEPT
它运行正常。但是使用 mac 地址时,它不起作用。
任何帮助,将不胜感激。
答案1
发现类似问题这里。
解决方案是将此规则添加到您的链中:
iptables -A FORWARD -m state --state ESTABLISHED -s 0/0 -j ACCEPT
另一件事是验证模块是否ipt_mac
已加载。