Linux-Networking

Linux/Ubuntu 網橋導致 tcp 重傳和 DUP ACK

  • April 14, 2018

當我在我的 Ubuntu 伺服器上配置網橋時,我讓每個數據包都被重新傳輸並得到許多重複的 ACK …… 就像這個 Wireshark 圖像

我的網橋介面配置是:

iface enp5s0 inet manual


auto br0
iface br0 inet static
     address 172.25.25.1
     netmask 255.255.255.0
     network 172.25.25.0
     gateway 172.25.25.251
     broadcast 172.25.25.255
     dns-nameservers 172.25.25.251
     bridge_ports enp5s0
     bridge_stp off
     bridge_fd 0
     bridge_maxwait 0

核心:Linux 4.13.0-38-generic #43~16.04.1-Ubuntu x86_64 作業系統:Ubuntu 16.04.4 LTS

我的 ethtool 結果:

ethtool enp5s0
Settings for enp5s0:
   Supported ports: [ TP ]
   Supported link modes:   10baseT/Half 10baseT/Full 
                           100baseT/Half 100baseT/Full 
                           1000baseT/Full 
   Supported pause frame use: No
   Supports auto-negotiation: Yes
   Advertised link modes:  10baseT/Half 10baseT/Full 
                           100baseT/Half 100baseT/Full 
                           1000baseT/Full 
   Advertised pause frame use: No
   Advertised auto-negotiation: Yes
   Speed: 1000Mb/s
   Duplex: Full
   Port: Twisted Pair
   PHYAD: 1
   Transceiver: internal
   Auto-negotiation: on
   MDI-X: on
   Supports Wake-on: g
   Wake-on: g
   Link detected: yes

我也設置

sysctl net.bridge.bridge-nf-call-iptables=0

我想念什麼嗎?還是某個地方的錯誤?或者有什麼亂七八糟的東西!

我已經嘗試了 hwe 核心 4.13 和通用 4.4 嘗試更改開關/電纜 .. 都一樣,只需刪除橋接介面並添加 ip 直接解決問題。

網橋沒有問題…問題出在tcpdump -i any. 它擷取了每個數據包兩次!一個在 thebr0上,另一個在物理介面本身上。

引用自:https://serverfault.com/questions/907039