Linux命令之ifconfig
ifconfig [interface]
ifconfig interface [aftype] options | address…
ifconfig是用來查看和配置網絡接口的工具。Ifconfig配置的信息在網絡設備重啟後,配置就會還原。需要永久保存,請進入配置文件配置。
address可以是inet(TCP/IP,默認IPv4)、inet6(IPv6)、ax25(AMPR分組無線電)、ddp(Appletalk Phase 2)、ipx(Nocell IPX)、netrom(AMPR分組無線電)
註意:CetOS6.8提示,此命令是過時的,請使用ip命令。
(1).選項
up 激活網絡設備 down 停止網絡設備 [-]arp 設備上啟用或禁用ARP協議 [-]promisc 設備上啟用或禁用混雜模式,如果啟用將接收所有數據包 [-]allmulti 啟用或禁用組播模式,如果啟用將接收所有組播數據包 metric <數目> 此參數設置接口度量,不適合GNU/Linux。(指定計算數據包的轉送次數時所要加上的數目) mtu <字節數> 此參數設置接口的最大傳輸單元 netmask <子網掩碼> 設置接口的子網掩碼。此項默認為通常的A類,B類或C類子網掩碼(從接口IP地址派生),但可以設置為任何值。 add <地址> 添加一個IPv6地址到接口 del <地址> 從接口移除一個IPv6地址 tunnel ::aa.bb.cc.dd 創建一個新的SIT(IPv6-in-IPv4)設備,隧道連接到指定目標 irq <IRQ地址> 設置此設備使用的中斷線。並非所有設備都可以動態更改其IRQ設置。 io_addr <I/O地址> 在此設備的I/O空間中設置起始地址 mem_start <內存地址> 設置此設備使用的共享內存的起始地址。只有少數設備需要此設置。 media <網絡媒介類型> 設置設備使用的物理端口或介質類型。不是所有設備都可以更改此設置,以及可以改變它們支持的值的設置。 [-]broadcast [地址] 如果給出了address參數,請設置此接口的洗衣廣播地址。否則設置(或清除)接口的IFF_BROADCAST標誌(將要送往指定地址的數據包當成廣播數據包來處理)。 [-]pointopoint [地址] 此關鍵字啟用接口的點對點模式,這意味著它是兩臺計算機之間的直接鏈接,沒有他人監聽。如果還給出了address參數,請設置鏈接另一端的協議地址,否則設置或清楚接口的IFF_POINTOPOINTment標誌。(與指定地址的網絡設備建立直接連線,此模式具有保密功能) multicast 在接口上設置組播標誌。(通常不需要,驅動會自己設置正確標誌) address 分配IP地址給接口
(2).實例
查看網絡接口
[root@CentOS6 桌面]# ifconfig //查看所有正在運行的網絡接口(eth1沒有聯網) eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3058 errors:0 dropped:0 overruns:0 frame:0 TX packets:2715 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:355994 (347.6 KiB) TX bytes:263751 (257.5 KiB) 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:65536 Metric:1 RX packets:12 errors:0 dropped:0 overruns:0 frame:0 TX packets:12 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:720 (720.0 b) TX bytes:720 (720.0 b) [root@CentOS6 桌面]# ifconfig //查看所有正在運行的網絡接口(eth1聯網) eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3084 errors:0 dropped:0 overruns:0 frame:0 TX packets:2716 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:357836 (349.4 KiB) TX bytes:264093 (257.9 KiB) 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:65536 Metric:1 RX packets:12 errors:0 dropped:0 overruns:0 frame:0 TX packets:12 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:720 (720.0 b) TX bytes:720 (720.0 b) [root@CentOS6 桌面]# ifconfig eth1 //查看指定網絡接口 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3084 errors:0 dropped:0 overruns:0 frame:0 TX packets:2716 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:357836 (349.4 KiB) TX bytes:264093 (257.9 KiB)
註意:如果想要查看所有的網絡接口,使用‘ifconfig -a‘即可。
下面詳細說明一下ifconfig顯示的網絡接口情況,以eth1為例:
第一行:eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE
eth1是網卡名稱;Link encap:Ethernet是連接類型,這裏是Ethernet(以太網);HWaddr 00:0C:29:42:9F:CE是網卡物理地址(MAC地址)。
第二行:inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0
inet addr:192.168.78.133是網卡的IPv4地址;Bcast:192.168.78.255是廣播地址;Mask:255.255.255.0是子網掩碼。
第三行:inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link
部分可能沒有,這一行是IPv6地址。
第四行:UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
UP是網卡開啟狀態;(BROADCAST應該是支持廣播;)RUNNING是網卡正在運行;MULTICAST說明支持組播;MTU:1500是最大傳輸單元1500字節。
第五、六、七行:RX packets:3084 errors:0 dropped:0 overruns:0 frame:0
TX packets:2716 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
這三行是接收和發送數據包的統計情況。
第八行:RX bytes:357836 (349.4 KiB) TX bytes:264093 (257.9 KiB)
這一行是接收和發送數據字節數統計信息。
註意:lo是表示主機的回環地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。比如把 httpd服務器的指定到回環地址,在瀏覽器輸入127.0.0.1就能看到你所架WEB網站了。但只是您能看得到,局域網的其它主機或用戶無從知道。
關閉或開啟網絡接口
[root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5072 errors:0 dropped:0 overruns:0 frame:0 TX packets:4027 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:877465 (856.8 KiB) TX bytes:537369 (524.7 KiB) [root@CentOS6 桌面]# ifconfig eth1 down //關閉網絡接口 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 BROADCAST MULTICAST MTU:1500 Metric:1 //可以看到UP和RUNNING已經消失 RX packets:5072 errors:0 dropped:0 overruns:0 frame:0 TX packets:4027 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:877465 (856.8 KiB) TX bytes:537369 (524.7 KiB) [root@CentOS6 桌面]# ifconfig eth1 up //開啟網絡接口 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 //UP和RUNNING又出現了 RX packets:5076 errors:0 dropped:0 overruns:0 frame:0 TX packets:4033 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:877987 (857.4 KiB) TX bytes:538149 (525.5 KiB)
配置IPv4地址,子網掩碼和廣播地址
[root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5123 errors:0 dropped:0 overruns:0 frame:0 TX packets:4035 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:880990 (860.3 KiB) TX bytes:538289 (525.6 KiB) [root@CentOS6 桌面]# ifconfig eth1 192.168.78.140 netmask 255.255.255.254 broadcast 192.168.78.254 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.140 Bcast:192.168.78.254 Mask:255.255.255.254 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5165 errors:0 dropped:0 overruns:0 frame:0 TX packets:4052 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:885043 (864.2 KiB) TX bytes:541394 (528.7 KiB)
刪除或添加IPv6地址
[root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5216 errors:0 dropped:0 overruns:0 frame:0 TX packets:4053 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:888385 (867.5 KiB) TX bytes:541736 (529.0 KiB) [root@CentOS6 桌面]# ifconfig eth1 del fe80::20c:29ff:fe42:9fce/64 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5241 errors:0 dropped:0 overruns:0 frame:0 TX packets:4053 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:889885 (869.0 KiB) TX bytes:541736 (529.0 KiB) [root@CentOS6 桌面]# ifconfig eth1 add fe80::20c:29ff:fe42:9fce/64 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5241 errors:0 dropped:0 overruns:0 frame:0 TX packets:4056 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:889885 (869.0 KiB) TX bytes:541974 (529.2 KiB)
修改MAC地址
[root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:2000 Metric:1 RX packets:5364 errors:0 dropped:0 overruns:0 frame:0 TX packets:4077 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:898649 (877.5 KiB) TX bytes:545368 (532.5 KiB) [root@CentOS6 桌面]# ifconfig eth1 hw ether 00:AA:BB:CC:DD:EE [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:AA:BB:CC:DD:EE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:2000 Metric:1 RX packets:5385 errors:0 dropped:0 overruns:0 frame:0 TX packets:4077 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:899909 (878.8 KiB) TX bytes:545368 (532.5 KiB)
修改最大傳輸單元
[root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5352 errors:0 dropped:0 overruns:0 frame:0 TX packets:4077 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:897929 (876.8 KiB) TX bytes:545368 (532.5 KiB) [root@CentOS6 桌面]# ifconfig eth1 mtu 2000 [root@CentOS6 桌面]# ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:0C:29:42:9F:CE inet addr:192.168.78.133 Bcast:192.168.78.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe42:9fce/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:2000 Metric:1 RX packets:5360 errors:0 dropped:0 overruns:0 frame:0 TX packets:4077 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:898409 (877.3 KiB) TX bytes:545368 (532.5 KiB)
開啟或關閉arp,由於我沒找到區別在哪裏,所以只寫下命令
ifconfig eth1 arp //開啟arp ifconfig eth1 -arp //關閉arp
Linux命令之ifconfig