網路程式設計之埠
阿新 • • 發佈:2020-10-20
網路程式設計之埠
2.1 埠作用
- 埠是作業系統分配給網路應用程式的編號, 當接收到資料之後, 作業系統會根據編號來將資料轉發到對應編號的應用程式.
網路程式必須要有埠號.
2.2 埠號
埠號就是標識埠的一個編號. 在 Linux 系統中, 埠號在 0-65535 之間. 埠號不是隨意使用的, 而是按照一定的規定(作業系統規定)進行分配. 埠號分:
- 知名埠號.
- 動態埠號.
網路通訊的流程先通過 IP 地址找到網路中的裝置, 再通過網路埠號來找到對應的程式埠, 然後通過埠把資料傳輸給對應的應用程式.
2.2.1 知名埠 (Well Known Ports)
知名埠號是系統程式使用的埠號. 知名埠範圍從 0 到 1023.
- 80 埠分配給 HTTP 服務
- 22 埠分配給 SSH 服務.
- 21 埠分配給 FTP 服務
2.2.2 動態埠(Dynamic Ports)
動態埠號是普通程式使用的埠號. 動態埠的範圍是從 1024 到 65535. 當這個程式關閉時, 同時也就釋放了所佔用的埠號.
2.2.3 如何檢視埠號
-
用 netstat -an | grep “:8080” 檢驗本機各埠的網路連線情況.
-
用 lsof -i [tcp/udp]:8080 列出當前系統埠所對應的程式.