Mysql

為什麼此“netstat -tln”輸出顯示“0.0.0.0:22”和“127.0.0.1:3306”的條目

  • April 4, 2016

當我執行命令時,netstat -tln我看到以下輸出:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::8000                 :::*                    LISTEN     
tcp6       0      0 :::80                   :::*                    LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
tcp6       0      0 :::443                  :::*                    LISTEN  

我理解除0.0.0.0:22和之外的所有條目127.0.0.1:3306;為什麼這些條目在那裡?

我正在使用 iptables 作為我的防火牆工具,並想知道我是否需要禁用它以及該條目最初是如何出現的。

我知道那3306是針對mysql的。但是為什麼 SSH 和 Mysql 有特定的 IP 地址,而其他伺服器沒有呢?

0.0.0.0:22

以上表示您正在偵聽埠 22 (ssh) 所有 ip 地址

127.0.0.1:3306

以上意味著您正在偵聽埠 3306 (mysql) 僅用於本地環回

前兩個與其他看起來不同的原因是因為這些是 IPv4 地址,而其他是 IPv6 地址,從顯示或或的Proto列中可以看出tcp``tcp6

對於帶有 IPv6 地址 ( tcp6) 的行,它正在偵聽:::所有 IP 地址,相當於 IPv4 的0.0.0.0


更新

謝謝,但是當我執行“cat /proc/sys/net/ipv6/conf/all/disable_ipv6”時輸出 1 證明了當我禁用 ipV6 時為什麼會獲得 IPv6 地址?在啟動 http、https、mysql 和 ssh 伺服器時,我沒有做任何特別的事情(或者我認為)。對於 IPv6 和 IPv4,我本來希望它們都有類似的條目。我對輸出的理解很廣泛,但我很難準確理解它。我需要這個來將它與我的 iptables 規則聯繫起來。– 山姆 7 分鐘前

您已在網路介面上禁用 IPv6,但不會從系統中刪除 IPv6;為此,您需要禁用 IPv6 核心模組。

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