ip netns网络空间使用

SNAT 源地址转发

执行ip netns exec route_br_ens192_0 iptables -nL POSTROUTING -t nat --line-numbers
输出如下:

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination         
1    SNAT       all  --  0.0.0.0/0            192.168.1.15         to:192.168.1.20
这是一个iptables的POSTROUTING链的规则列表,它用于在数据包离开系统后,但在网络设备上发送到目标之前对数据包进行处理。


第一行是规则的编号(num)。这是规则在链中的位置,可以用来引用或删除规则。

target 列列出了规则的目标。在这里,目标是 SNAT,意味着这是一个源地址转换规则。

prot 指定了规则应用的协议。这里是 all,表示匹配所有协议。

source 指定了匹配的数据包的源地址。在这里是 0.0.0.0/0,表示匹配所有来源的数据包。

destination 指定了数据包的目标地址。这里是 192.168.1.15,表示目标地址是 192.168.1.15。

to: 后面是 SNAT 规则的动作。这里是 192.168.1.20,表示源地址会被替换成 192.168.1.20。

总结一下,这条规则的作用是将所有从 192.168.1.15 发出的数据包的源地址替换为 192.168.1.20。

常用命令

# 查询网络空间
ip netns list

# 查询网络空间中的DNAT SNAT映射关系
ip netns exec route_br_ens192_2 iptables -nL PREROUTING -t nat --line-numbers
ip netns exec route_br_ens192_2 iptables -nL POSTROUTING -t nat --line-numbers

# 根据编号删除对应映射关系
ip netns exec {netnsName} iptables -D PREROUTING 1 -t nat
ip netns exec {netnsName} iptables -D POSTROUTING 1 -t nat

# 添加新的映射关系
ip netns exec {netnsName} iptables -t nat -A PREROUTING -d {eip} -j DNAT --to {vmIP}
ip netns exec {netnsName} iptables -t nat -A POSTROUTING -d {vmIP} -j SNAT --to {ip}

DNAT 目标地址转发

Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination         
1    DNAT       all  --  0.0.0.0/0            10.0.11.200          to:192.168.1.15

ip netns exec route_br_ens192_0 iptables -nL PREROUTING -t nat --line-numbers


你可能感兴趣的:(tcp/ip,网络,服务器)