[Linux] ifconfig用法



[Linux] ifconfig用法

ifconfig
主要是可以手動的啟動、觀察與修改網路介面的相關參數,可以修改的參數很多啊,
包括 IP 參數以及 MTU 等等都可以修改,
他的語法如下:

[root@www ~]# ifconfig {interface} {up|down}  <== 觀察與啟動介面
[root@www ~]# ifconfig interface {options}    <== 設定與修改介面
選項與參數:
interface:網路卡介面代號,包括 eth0, eth1, ppp0 等等
options  :可以接的參數,包括如下:
    up, down :啟動 (up) 或關閉 (down) 該網路介面(不涉及任何參數)
    mtu      :可以設定不同的 MTU 數值,例如 mtu 1500 (單位為 byte)
    netmask  :就是子遮罩網路;
    broadcast:就是廣播位址啊!

# 範例一:觀察所有的網路介面(直接輸入 ifconfig)
[root@www ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:F3:5D:23
          inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fef3:5d23/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:485 errors:0 dropped:0 overruns:0 frame:0
          TX packets:143 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:46082 (45.0 KiB)  TX bytes:19559 (19.1 KiB)

一般來說,直接輸入 ifconfig 就會列出目前已經被啟動的卡,不論這個卡是否有給予 IP,都會被顯示出來。而如果是輸入 ifconfig eth0 ,則會秀出這張介面的相關資料, 而不管該介面是否有啟動。所以如果你想要知道某張網路卡的 Hardware Address,直接輸入『 ifconfig "網路介面代號" 』即可喔! ^_^!至於上表出現的各項資料是這樣的(資料排列由上而下、由左而右):

    eth0:就是網路卡的代號,也有 lo 這個 loopback ;
    HWaddr:就是網路卡的硬體位址,俗稱的 MAC 是也;
    inet addr:IPv4 的 IP 位址,後續的 Bcast, Mask 分別代表的是 Broadcast 與 netmask 喔!
    inet6 addr:是 IPv6 的版本的 IP ,我們沒有使用,所以略過;
    MTU:就是第二章談到的 MTU 啊!
    RX:那一行代表的是網路由啟動到目前為止的封包接收情況, packets 代表封包數、errors 代表封包發生錯誤的數量、 dropped 代表封包由於有問題而遭丟棄的數量等等
    TX:與 RX 相反,為網路由啟動到目前為止的傳送情況;
    collisions:代表封包碰撞的情況,如果發生太多次, 表示你的網路狀況不太好;
    txqueuelen:代表用來傳輸資料的緩衝區的儲存長度;
    RX bytes, TX bytes:總接收、傳送的位元組總量


透過觀察上述的資料,大致上可以瞭解到你的網路情況,尤其是那個 RX, TX 內的 error 數量, 以及是否發生嚴重的 collision 情況,都是需要注意的喔! ^_^

ifconfig eth0 down; ifconfig eth0 up;
//重新取得網路ip