2015-07-03 51 views
0

是否有任何確定系統物理IP的命令(在每個物理接口上)?顯示系統物理IP的linux命令

其實我想製作一個腳本,除了物理IP之外,其他所有的IP都不可用。

由於提前, 迪帕克

回答

1

將有一臺服務器一個IP地址,因爲它是在網絡中該服務器的實體。要獲得在Linux中IP adrress:

hostname -i 
+0

這依賴於'hostname'的名稱查找。您會驚訝地發現這種情況很容易中斷(例如配置錯誤),或者可能不是您正在尋找的「IP」(例如,在具有多個網絡適配器的系統中)。實際上,manpage上寫着:「避免使用這個選項;使用主機名--all-ip-addresses(-I)而不是'」。 – DevSolar

+0

嗨Steephen;感謝您的答案..但它沒有奏效。我正在獲得環回IP ..其實我只需要一個物理IP;不是所有配置的IP。我只需要系統的靜態IP。 – Deepak

1

...每個物理接口...

這將是ifconfig

您也可以撥打hostname -I(注意大寫字母「I」),其中列出除環回和IPv6本地鏈路外的所有已配置IP。

+0

嗨DevSolar;感謝您的答案..但它沒有奏效。我正在獲得環回IP ..其實我只需要一個物理IP;不是所有配置的IP。我只需要系統的靜態IP。 – Deepak

+0

@Deepak:'ifconfig'應該列出所有已配置的接口。如果你只能得到一個環回IP,你的設置有些問題(或者你的盒子沒有網卡;-))。但是要求「IP」有一個主要問題。一個系統可以有多個NIC。畫一個防火牆 - 一個IP到廣域網,另一個完全到局域網。哪一個是系統的「IP」?這就是爲什麼文檔敦促你不要依賴'hostname -i'。 – DevSolar

+0

感謝您的幫助,但如果您使用ip addr命令添加ip,ifconfig會顯示所有ip列表。 – Deepak