• 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
    
    • 1
    • 2
    • 3
    这是一个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。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    常用命令

    # 查询网络空间
    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}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    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
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 相关阅读:
    算法:包含min函数的栈
    面试题:深拷贝、浅拷贝、引用拷贝的区别
    创新工具 | 快速创作高质量SEO博文的6个技巧
    Vue3 + TypeSciprt+Vant 项目框架构建
    stm32之智能垃圾桶实战
    【ArcGIS Pro二次开发】:CC工具箱1.1.1更新_免费_安装即可用
    架构每日一学 14:架构师如何进行可行性探索?
    dp线段树优化-最大子段和
    k8s初始化pod-pod标签
    ArmSoM-W3之RK3588 MPP环境配置
  • 原文地址:https://blog.csdn.net/qq_34685213/article/details/132991021