Networking
使用 Keepalived 時,伺服器如何以不同的 IP(虛擬 IP)響應?
我一直在研究 Keepalived 以實現高可用性。
當 Keepalived 到位時,我有一些關於 TCP/IP 行為的基本問題。
使用 Keepalived,客戶端可以通過其虛擬 IP 地址訪問伺服器。這是通過 MAC 轉換實現的。但在一天結束時,主機伺服器接收到具有不同目標 IP 的包,而不是它自己的 IP。最初我認為主機會拒絕 IP 與自己不同的包,但沒關係。
令我感到困惑的是,主機伺服器還使用虛擬 IP 地址來響應請求,該地址在其任何介面上都不存在。
**TCP/IP 堆棧如何構造具有與其網路介面不同的源 IP 的包?**keepalived 是否對 TCP/IP 堆棧內的包結構起作用?我雖然 Keepalived 只會作用於應用層。
提前感謝您的任何澄清。
虛擬 ip 存在於一個介面上。您可以使用
ip addr list eth0
命令輕鬆檢查它。一個介面可以有多個 IP 地址。所以,實際上所有的 IP 地址都是“虛擬的”,即使你只有一個。我們稱“真實IP ”為第一個預設IP。