Linux基礎命令—ifconfig

一生有你llx發表於2019-02-15
ifconfig
       ifconfig指令用來配置網路介面引數,同時還可以顯示當前核心網路介面的工作狀態。如果沒有提供引數,則ifconfig將顯示當前活動介面的狀態。如果給定單個介面引數,則只顯示給定介面的狀態;如果給定單個“-a”引數,則顯示所有介面的狀態,即使是關閉的介面也是如此。否則,它會配置一個介面。
       此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、語法
       ifconfig  [interface | up | down]

2、選項引數列表
       interface
              介面的名稱。這通常是一個驅動程式名,後面跟著一個單元號,例如用於第一個乙太網介面的eth0。
       up
              此標誌將導致啟用介面。如果將地址分配給介面,則會隱式指定該地址。
       down
              此標誌導致關閉此介面的驅動程式。
       [-]arp
              啟用或禁用在此介面上使用ARP協議。
       [-]promisc
              啟用或禁用介面的混雜模式。如果選中,網路上的所有資料包都將由介面接收。
       [-]allmulti
              啟用或禁用所有多播模式。如果選中,則介面將接收網路上的所有多播資料包。
       metric N
              此引數設定介面度量。它在GNU/Linux下不可用
       mtu N
              此引數設定介面的最大傳輸單元(MTU)。
       dstaddr addr
              為點對點鏈路(如PPP)設定遠端IP地址.這個關鍵字現在已經過時了;使用pointopoint關鍵字代替。
       netmask addr
              設定此介面的IP網路掩碼。此值預設為通常的A、B或C類網路掩碼(從介面IP地址派生),但可以設定為任何值。
       add addr/prefixlen
              向介面新增IPv 6地址
       del addr/prefixlen
              從介面中刪除IPv 6地址
       tunnel ::aa.bb.cc.dd
              建立一個新的SIT(IPv6-in-IPv4)裝置,通過隧道到達給定的目的地。
       irq addr
              設定此裝置使用的中斷行。並非所有裝置都可以動態更改其IRQ設定。
       io_addr addr
              為該裝置設定I/O空間中的起始地址
       mem_start addr
              設定此裝置使用的共享記憶體的起始地址。只有少數幾個裝置需要這個
       media type
              設定裝置要使用的物理埠或介質型別。並非所有裝置都可以更改此設定,以及那些可以更改其支援的值的裝置。典型的型別值是10 base 2(細乙太網)、10 base T(雙絞線10 Mbps乙太網)、AUI(外收發信機)等。驅動的特殊介質型別可以用來告訴驅動對媒體進行自動感知。同樣,並不是所有的驅動都能做到這一點。
       [-]broadcast [addr]
              如果地址引數給定,則為該介面設定協議廣播地址。否則,設定(或清除)介面的IFF_BROADCAST標誌。
       [-]pointopoint [addr]
              這個關鍵字啟用了介面的點對點模式,這意味著它是兩臺機器之間的直接連結,沒有其他人監聽它。如果地址引數也給出了,就像過時的dstaddr關鍵字一樣,設定連結另一端的協議地址。否則,設定或清除介面的IFF_POINTOPOINT標誌。
       hw class address
              如果裝置驅動程式支援此操作,則設定此介面的硬體地址。關鍵字後面必須跟著硬體類的名稱和相當於硬體地址的可列印的ASCII。目前支援的硬體類包括ether (乙太網)、ax25(AMPRAX.25)、ARCnet和netrom(AMPR NET/ROM)。
       multicast
              在介面上設定多播標誌。這通常不應該需要,因為驅動程式本身設定正確的標誌。
       address
              要分配給此介面的IP地址。
       txqueuelen length
              設定裝置的傳輸佇列的長度。對於具有高延遲(調變解調器鏈路,ISDN)的較慢裝置,將其設定為小值是有用的,以防止快速批量傳輸過多地干擾諸如telnet之類的互動通訊。

3、地址族
       如果介面名稱之後的第一個引數被識別為受支援地址族的名稱,則該地址族用於解碼和顯示所有協議地址。目前支援的地址族包括Internet(TCP/IP,預設值)、inet6(IPv 6)、Axis25(AMPR分組無線電)、ddp(AppleTalk相位2)、IPX(Novell IPX)和netrom(AMPR分組無線電)。在IPv4虛線小數表示法中提供的所有數字都可以是十進位制、八進位制或十六進位制,正如ISO C標準所指定的那樣(即,前導0x或0x表示十六進位制;否則,前導“0”表示八進位制;否則,該數字被解釋為十進位制)。使用十六進位制和八進位制數字是不符合RFC的,因此它的使用是不鼓勵的,可能會消失。

4、例項
1)檢視當前網路狀態 
       [root@localhost ~]# ifconfig                //沒有任何引數選項,顯示當前所有網路狀態
       eth0      Link encap:Ethernet  HWaddr 08:00:27:14:33:57  
          inet6 addr: fe80::a00:27ff:fe14:3357/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:107276 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72251 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:83580745 (79.7 MiB)  TX bytes:5842218 (5.5 MiB)

       lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:7347 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7347 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:786270 (767.8 KiB)  TX bytes:786270 (767.8 KiB)
2)檢視指定網路卡的狀態 
       [root@localhost ~]# ifconfig eth0           //顯示指定網路卡狀態
       eth0      Link encap:Ethernet  HWaddr 08:00:27:14:33:57  
          inet6 addr: fe80::a00:27ff:fe14:3357/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:107276 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72251 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:83580745 (79.7 MiB)  TX bytes:5842218 (5.5 MiB)
3)啟動網路卡 
       [root@localhost ~]# ifconfig eth0 down           //關閉eth0
       [root@localhost ~]# ifconfig eth0 up             //開啟eth0
       [root@localhost ~]# ifconfig eth0                 //檢視eth0,已經分配ip
       eth0      Link encap:Ethernet  HWaddr 08:00:27:14:33:57  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe14:3357/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:107280 errors:0 dropped:0 overruns:0 frame:0
          TX packets:72262 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:83582067 (79.7 MiB)  TX bytes:5843588 (5.5 MiB)