網路基礎操作:命令 ping
, ip addr
, ifconfig
1. 網路概念入門:一點理論
今天的課程中,我們將探討 Linux 網路工具的基礎操作。你會學到如何檢查網路節點的可用性、分析網路介面的狀態與配置,還有進行網路設定的操作。
網路就像是 IT 世界的神經系統。如果你曾經好奇你的瀏覽器如何打開網站頁面,那答案很簡單:透過網路。不管你未來的角色是開發者、管理員還是工程師,理解網路基礎都是非常重要的技能。
那麼,什麼是網路呢?網路是一群為了互相傳遞資訊而連接起來的電腦。在 Linux 的環境中,網路管理的第一步就是理解基本概念:
- IP 地址:這是網路中設備的唯一識別碼。想像一下,這就是你電腦的郵寄地址。
- 子網路:網路中設備的邏輯分組。它像是一個包含地址的街區。
- 閘道:這是通向外界的出入口,設備可以通過它從本地網路連接到互聯網或者其他的子網路。
IP 地址有兩種類型:IPv4(例如,192.168.1.1
)和 IPv6(例如,2001:0db8:85a3:0000:0000:8a2e:0370:7334
)。IPv4 更簡單,我們的課程會先使用它。IPv6 是一個更酷的長期標準,我們稍後會再來探討。
2. 指令 ping
:檢查節點的可達性
ping
在幹嘛?
ping
是一個用來檢查網路中其他節點是否可用的小工具。它會發送一個小小的「打招呼訊息」(ICMP 請求)到目標伺服器,然後等待回應。如果節點回應,代表一切正常;如果沒回應,可能是有問題(或者伺服器純粹就在耍酷,不理你)。
怎麼使用 ping
?
讓我們試試看怎麼使用 ping
指令吧。打開 terminal,然後輸入以下指令:
ping 8.8.8.8
這個指令會向 Google 的公開 DNS 伺服器發出請求。你會看到類似以下的輸出:
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=10.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=10.2 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=10.3 ms
這些輸出的意思是:
- icmp_seq:發出的請求編號。
- ttl:「存活時間」或封包能跳幾個網路節點。
- time:封包來回的時間(毫秒)。
如果你想限制發送請求的次數,可以使用 -c
標誌:
ping -c 4 8.8.8.8
這個指令會只發送 4 個請求,而不是無限發送。
練習:檢查本地端連線與網際網路的連通性
嘗試用 ping
指令檢查你的路由器 IP 地址(通常是像 192.168.1.1
這樣)以及 8.8.8.8
的連通情況。這能幫助你了解本地網路是否正常,以及是否能連上網際網路。
3. 命令 ip addr
:檢查網絡接口
什麼是網絡接口?
網絡接口就是你的電腦用來和網絡「溝通」的工具。它可以是 Ethernet
(有線連接)、WLAN
(無線連接)或者是為特定任務創建的虛擬接口。
命令 ip addr
顯示當前網絡接口的配置狀態。讓我們試試看:
ip addr
大概輸出會像這樣:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic enp0s3
inet6 fe80::1a2b:3c4d:5e6f:f7g8/64 scope link
以下是輸出的含義:
lo
— 這是本地接口 (localhost)。它的地址永遠是127.0.0.1
。enp0s3
— 這是你的 Ethernet 網絡適配器的接口名稱。inet
— 接口的 IPv4 地址。inet6
— 接口的 IPv6 地址。
如何暫時配置 IP 地址?
如果你有超級使用者權限 (通過 sudo
),你可以暫時配置一個 IP 地址:
sudo ip addr add 192.168.1.101/24 dev enp0s3
這個 IP 地址將在重新啟動之前有效。
4. 命令 ifconfig
:老舊但依然流行的工具
以前用 ifconfig
來管理網路接口。現在它的使用逐漸減少(已被 ip addr
取代),但有時候仍然能在一些舊的發行版本裡見到。
檢查接口狀態
如果想透過 ifconfig
查看接口的狀態,執行以下命令:
ifconfig
輸出結果將類似於 ip addr
的輸出。
開啟/關閉接口
你可以使用以下命令來開啟或關閉接口:
sudo ifconfig enp0s3 down
sudo ifconfig enp0s3 up
再次提醒,ifconfig
並不適用於所有現代發行版本。如果找不到該命令,可以嘗試安裝 net-tools
套件,或者直接轉用 ip addr
。
5. 範例:檢查可達性和網路
現在我們來將學到的知識結合在一起,做一個簡單的實踐範例。
檢查本地介面的可達性:
ping 127.0.0.1
檢查您網路的 IP 位址:
ip addr
嘗試臨時配置一個新的 IP 位址:
sudo ip addr add 192.168.1.102/24 dev enp0s3 ip addr show enp0s3
檢查公開節點的可達性:
ping -c 3 8.8.8.8
如果您使用的是舊版發行版本,嘗試切換介面:
sudo ifconfig enp0s3 down sudo ifconfig enp0s3 up
現在你掌握了 Linux 網路診斷的基本工具。命令 ping
、ip addr
和 ifconfig
是你進入網路管理世界的第一步。接下來只會更加有趣喔!
GO TO FULL VERSION