通過 ip netns help 可以查看所有關於ip netns的命令:
network namespace 在邏輯上是網絡堆棧的一個副本,它有自己的路由、防火牆規則和網絡設備。
ip netns add r1
ip netens add r2
此命令可以添加 名字為 r1 r2 的network namespace對象
ip netns list
顯示所有network namespace對象,即顯示在目錄/var/run/netns 下的所有network namespace對象
ip netns del r1 刪除r1 ip -all netns 刪除所有的network namespace對象
ip netns exec r1 ifconfig -a 查看r1的網絡
在網絡名稱空間中添加一對網卡:ip link add v1 type veth peer name v2
將網卡分別添加到兩個命名空間中: ip link set v1 netns r1 ip link set v2 netns r2
ip netns exec r1 bash 在r1上啟動進程 在啟動進程過程中,在另一個進程刪除r1 網卡會一直保持在r1進程中,直到進程結束
ip netns identify 此命令查看進程的network namespace
ip netns pids r1 查看r1中進程的pid
ip netns monitor 命令用來監控對 network namespace 的操作。比如我們刪除一個 network namespace 時就會收到相應的通知
ip [-all] netns exec NAME cmd 此命令可以在 指定命名空間中執行命令。如:ip netns exec r1 ping 10.0.0.1 ip netns exec r1 ip link set v1 name enth0
給兩個網卡添加ip地址: ip netns exec r1 ifconfig eth0 10.0.0.1/24 up ip netns exec r2 ifconfig eth0 10.0.0.2/24 up