停用或重新計算「docker0」介面上的 TCP 校驗和驗證

停用或重新計算「docker0」介面上的 TCP 校驗和驗證

因為我需要在docker容器的傳輸層使用esp,所以我想在docker容器中停用tcp校驗和驗證。有什麼辦法可以做到這一點嗎?

如果沒有,是否可以透過某種方式將套件提供給自訂 netfilter 模組,然後再刪除以修正校驗和?例如,為了更正我使用的傳出包:

sudo iptables -t mangle -A POSTROUTING -p tcp -j NFQUEUE

然後簡單地編寫一個自訂掛鉤來在 esp 加密發生之前修正校驗和。

但是,我對傳入的包裹嘗試了相同的操作:

sudo iptables -t mangle -A PREROUTING -p tcp -j NFQUEUE

並且從未看到任何包裹到達 NFQUEUE,所以我假設它們在到達隊列之前就被丟棄了,因為校驗和不正確。有什麼辦法可以防止這種情況嗎?

相關內容