手动搭建一个net转发
#!/bin/bash ip netns delete ns1 ip netns add ns1 # 创建新 namespace ns1 ip link add veth0 type veth peer name veth1 # 创建一对veth pair ip link set veth0 netns ns1 # 将端口 veth0 接入namespace ns1 中 ip netns list ip netns ns1 exec ifconfig -a ip addr add 10.100.1.1/24 dev veth1 # 给 veth1 端口指定 IP、子网掩码、广播域 ip link set veth1 up # veth1 启用
ip netns exec ns1 ip addr add 10.100.1.2/24 dev veth0 # 给命名空间 ns1 中的端口veth0指定IP、子网掩码、广播域 ip netns exec ns1 ip link set veth0 up # 启用命名空间ns1 中的端口veth0 ip netns exec ns1 ip addr show # 和ip ad一样列出网络接口 ip netns exec ns1 ip route add default via 10.100.1.1 # 给命名空间 ns1 中设置路由规则下一跳地址设为物理机上接的网口的IP ip netns exec ns1 ip route show # 展示 ns1 上的路由规则 ip netns exec ns1 ping 10.100.1.1 -c 4 # ping 物理机上的veth1的IPecho 1 > /proc/sys/net/ipv4/ip_forward # 开启物理机的 ip forwarding 功能 iptables -P FORWARD DROP iptables -F FORWARD iptables -t nat -F iptables -t nat -A POSTROUTING -s 10.100.1.0/255.255.255.0 -o ens160 -j MASQUERADE # ens160为物理机上的可通外网的网卡 #Allow forwarding iptables -A FORWARD -i ens160 -o veth1 -j ACCEPT iptables -A FORWARD -o ens160 -i veth1 -j ACCEPT iptables -L -n # show the iptables of filter iptables -t nat -L -n # show the iptables of nat
文章出处:http://www.cnblogs.com/aaron-agu/
只有毅力和决心才能使人真正具有价值!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
2020-02-21 理解MySQL索引B+TREE