您好,登錄后才能下訂單哦!
本篇文章為大家展示了Linux網橋ping虛擬網卡不通的原因是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
解釋一下為什么 Linux veth0/1 + bridge ping 不通。
原因都在 ip route show table local 輸出里。直接上步驟:
[dahui@192 ~]$ route -v
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.1.1 0.0.0.0 UG 100 0 0 em1
192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 em1
[dahui@192 ~]$
# 創建veth對。
sudo ip link add veth0 type veth peer name veth2
# 給veth設置IP地址
sudo ip addr add 192.168.2.10/24 dev veth0
sudo ip addr add 192.168.2.20/24 dev veth2
# 激活接口
sudo ip link set veth0 up
sudo ip link set veth2 up
# 直連路由被自動添加了路由表
[dahui@192 ~]$ route -v
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.1.1 0.0.0.0 UG 100 0 0 em1
192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 em1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 veth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 veth2
[dahui@192 ~]$
# 創建一個linux網橋 br0
sudo ip link add name br0 type bridge
sudo ip link set br0 up
# 把veth0接到br0,veth0有ip的情況下雖然能接收來自協議棧的數據但是reponse只能走br0了。
sudo ip link set dev veth0 master br0
# veth0 擁有IP已經沒有意義,把這個IP給br0
sudo ip addr del 192.168.2.10/24 dev veth0
sudo ip addr add 192.168.2.10/24 dev br0
# 期待通過 br0接口ping veth3能成功。但是失敗了。
[dahui@192 ~]$ ping -c 1 -I br0 192.168.2.20
PING 192.168.2.20 (192.168.2.20) from 192.168.2.10 br0: 56(84) bytes of data.
--- 192.168.2.20 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms
[dahui@192 ~]$
下面是由系統維護的 local 路由表:
[dahui@192 ~]$ ip route show table local
broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1
broadcast 192.168.1.0 dev em1 proto kernel scope link src 192.168.1.10
local 192.168.1.10 dev em1 proto kernel scope host src 192.168.1.10
broadcast 192.168.1.255 dev em1 proto kernel scope link src 192.168.1.10
broadcast 192.168.2.0 dev veth2 proto kernel scope link src 192.168.2.20
broadcast 192.168.2.0 dev br0 proto kernel scope link src 192.168.2.10
local 192.168.2.10 dev br0 proto kernel scope host src 192.168.2.10
local 192.168.2.20 dev veth2 proto kernel scope host src 192.168.2.20
broadcast 192.168.2.255 dev veth2 proto kernel scope link src 192.168.2.20
broadcast 192.168.2.255 dev br0 proto kernel scope link src 192.168.2.10
[dahui@192 ~]$
Reference:
https://unix.stackexchange.com/questions/205708/linux-does-not-reply-to-arp-request-messages-if-requested-ip-address-is-associat
上述內容就是Linux網橋ping虛擬網卡不通的原因是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。