我跟着本教程关于如何使用 hostapd 创建 wifi 网络、分配 IP 地址以及将连接转发到另一个网络接口。我尚未设置 IP 转发,因为我尚未找到反转转发的方法。有人可以 a. 解释 IP 伪装实际上做什么,b. 解释每个部分的具体作用,sudo iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o ppp0 -j MASQUERADE
以便我和未来的读者可以更好地理解和使用 iptables 命令,最重要的是 c. 告诉一种无需重新启动计算机即可反转它的简单方法。我对 Linux 命令行及其工作原理有一定的经验,因此不需要解释基本用法。
答案1
这是 的基本设置iptables
。这将删除所有旧的rules
和chains
,并允许任何出站连接。
sudo service iptables stop
#################################################
# clear existing chains
#################################################
sudo iptables --flush
sudo iptables --delete-chain
#################################################
# allow loopback
#################################################
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
#################################################
# allow all ICMP
#################################################
sudo iptables -A INPUT -p icmp --icmp-type any -j ACCEPT
sudo iptables -A OUTPUT -p icmp -j ACCEPT
#################################################
# allow established connections
#################################################
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#################################################
# deny all
#################################################
sudo iptables -A INPUT -j DROP
#################################################
# default policies
#################################################
sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT
#################################################
# save the new policy
#################################################
sudo service iptables save
您的sudo iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -o ppp0 -j MASQUERADE
手段
-A
将此规则附加到nat
表中:路由决策后POSTROUTING
,对于源网络-s 10.10.0.0/16
,在出站接口上ppp0
执行 nat-j MASQUERADE
MASQUERADE
是nat
。在输出接口上用来自接口的地址掩码源 IP 地址。NAT
是网络地址转换。有关 nat 的更多信息可以找到这里。
编辑1
sudo iptables -t nat -A rest_of_rule
您可以使用sudo iptables -t nat -D rest_of_rule
“仅替换” -A
、“附加”或“删除”来删除任何添加的规则-D
。
示例 2
添加
sudo iptables -A INPUT -j DROP
消除
sudo iptables -D INPUT -j DROP