Linux ping命令網路連線測試,127.0.0.1與192.168虛擬ip

Linux網路連線相同重要,本文介紹如何使用ping命令測試連線狀況,示範「-c」、「-i」、「-I」、「s」等參數用法,同時補充127.0.0.1與192.168這兩個虛擬IP的作用。

一、Linux ping命令

想確認Linux電腦上網狀況的最簡單方式是瀏覽網頁,而瀏覽網頁在本質上是和遠端電腦建立連線,兩者之間傳送資料。這個在Linux相關的命令是「ping」,後面參數是想瀏覽的網頁網址,例如截圖所示的命令,可以看到已經發送了5個網路封包,就好像寄信一樣經過層層轉送,成功送達而且一個都沒有調包的情形:「5 received. 0 % packet loss.」。

注意到windows系統也有ping命令,不過windows的ping會傳送完就結束了,可是Linux系統的ping命令是會一直傳送,必須要手動的在鍵盤輸入組合鍵「Ctrl+C」,代表Cancel取消才會結束測試的狀態。

Linux ping命令網路連線測試,127.0.0.1與192.168虛擬ip 1

二、測試次數參數

上個步驟提到Linux的ping命令會一直測試傳送網路封包,可以簡單在後面加一個參數「-c 3」,代表count次數,後面空一格再加上3,代表只要測試三次就好了。實際檢視測試的結也是傳送三次,和上個步驟同樣順利成功,沒有掉包的情形,表示網路狀況良好。

一張含有 文字 的圖片

自動產生的描述

三、發送間隔設定

網路連線除了是否能夠順利連上,另外一個觀察重點是時間,在ping命令後面加一個參數:「-i 3」,這裡的「i」代表Interval間隔的意思,後面的「3」是三秒,因此是每隔三秒發送一次網路請求的封包,就好像每隔三秒打一次電話,看電話通不通一樣的狀況,測試結果OK。

一張含有 文字 的圖片

自動產生的描述

四、虛擬IP位址

先前步驟提到網路連線就好像寄信或者是打電話一樣,不管是寄信或者打電話,最重要的是彼此的位置,地址或者電話號碼。以全球資訊網而言是所謂的IP位址。

Linux系統可以透過命令「ip addr」瞭解目前電腦主機的IP位址,執行結果可以看到有兩個IP。第一個IP代號是「lo」或者可以說網卡名稱是「lo」,注意到有個「loopback」的英文單字,它的意思有點類似寄信給自己一樣,而自己的IP便是「127.0.0.1」。這個可說是在網路世界共通的原則,每台電腦在提到自己IP時候,想要打電話或寄信給自己進行種種的測試,都是使用「127.0.0.1」這一個IP,幾乎是從一開始在規範全球資訊網的時候,大家就已經說好了把這一個IP保留下來,它並不能夠對外連接網路,純粹用來自己打給自己。

第二個IP網卡名稱是「eth0」,位址是「192.168.31.200」,看起來好像是一個真正的IP,也就是真正的電話號碼或者地址,但其實它跟「127.0.0.1」同樣是一個特別的保留IP區段,其作用好像是網內互打的簡碼代碼,在同樣一個路由器或者是同一個 WiFi之內,彼此之間都是用192.168開頭的IP進行網內互打,所以可以想見它也是沒有辦法對外連線的IP。

Linux ping命令網路連線測試,127.0.0.1與192.168虛擬ip 5

五、127.0.0.1失敗

在查到了兩個IP位址之後,接下來當然想試看看這兩個IP到底是哪一個可以上網,還是都可以上網。於是在「ping」命令後面再加一個參數,大寫的「I」代表要用指定的 IP網卡進行連線測試。

首先用第1個網卡代號「lo」,它代表的是localhost本機,連線結果是百分之百的掉包,接著使用它的實際的IP位址:「127.0.0.1」,同樣是全部杠龜。

一張含有 文字 的圖片

自動產生的描述

六、192.168連線

接著再以第二個網卡IP進行測試,代號「eth0」以及「192.168.31.200」,連線結果成功,完全沒有掉包,可以想見這個才是實際連線所使用的IP。

Linux ping命令網路連線測試,127.0.0.1與192.168虛擬ip 8

七、網路封包大小

最後,關於網路連線還有一個重點是實際傳輸內容的大小,首先如果是普通的「ping」命令,注意到執行結果第一行有個數字是「56(84) bytes of data」,代表整個封包是有84位元,而實際內容是56位元。如果在「ping」後面再加一個參數:「-s 1000」,執行結果就會是整個封包是「1028」,而實際資料內容便是參數所設定的「1000」。

一張含有 文字 的圖片

自動產生的描述

Linux與Windows的Ping

贊贊小屋記得在公司上班的時候,如果電腦網路有問題,IT人員來幫忙幾乎每次都是在我的windows電腦開啟終端機,輸入「ping」命令,所以「ping」這個命令是在Windows和 Linux這兩個主流作業系統相通的命令,只不過如同本篇文章第一步驟所述,兩者作用稍微有點不同。這好像許多程式語言都有相同的函數或語句,而不同的作業系統既然都是以計算機運算作為目的,彼此之間當然也會有一些互相參考共通的命令,因此在接觸熟悉 Linux的過程中,其實對於 Windows作業系統也會有一定程度的幫助。

每天學習,每天充電:Linux文章合集

Linux ping命令網路連線測試,127.0.0.1與192.168虛擬ip 11
歡迎加入Line社群,口袋裡的VBA小教室!
Ask ChatGPT
Set ChatGPT API key
Find your Secret API key in your ChatGPT User settings and paste it here to connect ChatGPT with your Tutor LMS website.