Linux 綁定非本機 IP – net.ipv4.ip_nonlocal_bind

在 Linux 如果需要綁定本機不存在的 IP, 例如在 HAproxy 及 Nginx 可能會用到, 需要開啟 Kernel 的參數 net.ipv4.ip_nonlocal_bind.

ipv4 及 ipv6 的 ip_nonlocal_bind 參數預設是關閉, 要檢視目前的狀態, 可以用以下指令:

# sysctl net.ipv4.ip_nonlocal_bind
# sysctl net.ipv6.ip_nonlocal_bind

如果上面兩個指令的回傳是 0, 那便表示參數是關閉, 要開啟可以執行以下指令:


ipv4:

$ sudo sysctl -w net.ipv4.ip_nonlocal_bind=1

ipv6:

$ sudo sysctl -w net.ipv6.ip_nonlocal_bind=1

以上指令會讓新設定立即生效, 要下次開機也自動開啟以上參數, 執行以下指令:

ipv4:

$ sudo echo net.ipv4.ip_nonlocal_bind=1 >> /etc/sysctl.conf

ipv6:

$ sudo echo net.ipv6.ip_nonlocal_bind=1 >> /etc/sysctl.conf


你可能感興趣的內容:

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.