CodeGym /Adesua ahorow /Docker SELF /網路基礎操作:命令 ping, ip addr, ifconfig

網路基礎操作:命令 ping, ip addr, ifconfig

Docker SELF
等級 4 , 課堂 0
開放

網路基礎操作:命令 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. 範例:檢查可達性和網路

現在我們來將學到的知識結合在一起,做一個簡單的實踐範例。

  1. 檢查本地介面的可達性:

    ping 127.0.0.1
    
  2. 檢查您網路的 IP 位址:

    ip addr
    
  3. 嘗試臨時配置一個新的 IP 位址:

    sudo ip addr add 192.168.1.102/24 dev enp0s3
    ip addr show enp0s3
    
  4. 檢查公開節點的可達性:

    ping -c 3 8.8.8.8
    
  5. 如果您使用的是舊版發行版本,嘗試切換介面:

    sudo ifconfig enp0s3 down
    sudo ifconfig enp0s3 up
    

現在你掌握了 Linux 網路診斷的基本工具。命令 pingip addrifconfig 是你進入網路管理世界的第一步。接下來只會更加有趣喔!

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION