Re: Fw: [請問] netstat -an 結果顯示的格式問題

看板Network作者 (單色檸檬子)時間6年前 (2018/04/06 09:33), 編輯推噓2(206)
留言8則, 2人參與, 6年前最新討論串1/1
※ 引述《drkh (eutatosp)》之銘言: : ※ [本文轉錄自 ask 看板 #1QnhIpXG ] : 在 netstat -an 的結果顯示裡, 以下面幾種格式呈現的"address:port"是何意義? : (先不去管 State 的各種狀態) 事實就是很關 state 事,因為你這裏高達八成的問題都是 listening state socket 才會看到的。 : 第一例: : Proto Local Address Foreign Address State : TCP [::]:135 [::]:0 : 關於此例有兩個問題. : (1) 中括號內有兩個冒號 [::], 是何意義? IPv6 中等效於 IPv4 0.0.0.0 的位址。Socket bind 0.0.0.0 即綁電腦所有的 IP 位址,因為電腦可能有兩張或以上的網路介面,這樣就可以同時從所有介面接收連線。不過遠端 0.0.0.0 是因為 TCP 連線四參數(本機位址,本機埠號,遠端位址,遠端埠號)在 listening 階段有兩個不存在,塞 0.0.0.0:0 其實就是個佔位符。 : (2) [::]: 後面的 port 0, 是何意義? 上面順便回答了。 : 第二例: : TCP 192.168.0.1:139 0.0.0.0:0 : 請問 0.0.0.0:0 的 port 0 是何意義? 見上例(2)。 : 第三例: : TCP [::1]:1306 [::1]:2869 : 請問 [::1] 是何意義? 簡單說就是 IPv6 的 127.0.0.1。 : 第四例 : UDP 0.0.0.0:500 *:* : 關於此例有兩個問題. : (1) *:* 是何意義? 見例一(1)。 : (2) 凡是在 Foreign Address 那一欄位出現 *:* 時, : 其右側 State 欄位均為空白. 為什麼? 這是 UDP 的 listening socket,因為 UDP 是 connectionless 的,所以沒有 state。 也因為這個特性你也不會在 netstat 看到遠端有特定位址的 UDP 條目。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.246.14.159 ※ 文章網址: https://www.ptt.cc/bbs/Network/M.1522978414.A.017.html

04/06 10:56, 6年前 , 1F
04/06 10:56, 1F

04/06 11:56, 6年前 , 2F
多謝, 而且拍拍手...
04/06 11:56, 2F

04/06 11:58, 6年前 , 3F
關於 :: 這個記號, 我現在知道它的意義是:"表示 1~9 這些數
04/06 11:58, 3F

04/06 11:58, 6年前 , 4F
字之前的所有位元皆為 0".
04/06 11:58, 4F

04/06 12:02, 6年前 , 5F
0.0.0.0:0 只伴隨 TCP 出現, 而 *.* 只伴隨 UDP 出現, 這是
04/06 12:02, 5F

04/06 12:03, 6年前 , 6F
不是說, 0.0.0.0:0 這個佔位符只用於 TCP, 而 *.* 這個佔位
04/06 12:03, 6F

04/06 12:03, 6年前 , 7F
符只用於 UDP ?
04/06 12:03, 7F

04/06 12:05, 6年前 , 8F
如果是的話, 為什麼 TCP 及 UDP 需要不同的佔位符?
04/06 12:05, 8F
文章代碼(AID): #1Qnivk0N (Network)
文章代碼(AID): #1Qnivk0N (Network)