使用 ifconfig 指令查看網路卡狀態

eth0      Link encap:Ethernet  HWaddr 08:00:27:51:3c:5b
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe51:3c5b/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1460 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1406 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:127041 (127.0 KB)  TX bytes:299866 (299.8 KB)

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:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

 

網路卡設定在 /etc/network/interfaces,以編輯器開啟 (e.g. vim, nano … etc),預設應該長的像這樣:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

 

針對幾個設定檔中出現的關鍵字簡單說明:

  • auto:網路介面卡應該在系統啟動時自動套用設定並啟用,這個設定就是來自於 /etc/network/interfaces 這個檔案
  • lo, eth0:網路卡介面名稱
  • iface:介面 (interface) 的簡稱
  • inet:在介面上使用 TCP/IP 網路
  • loopback:回送,此類型介面為虛擬介面,經由此介面送出的封包會直接傳給自己,通常作業系統都預設有一個 loopback 介面,其 IP 為 127.0.0.1,一種簡單的網路卡功能檢測方式為 ping 127.0.0.1,這個動作就是在網路卡上藉由測試傳送與接收 ping 封包是否正常來驗證網路卡功能是否出問題
  • dhcp:使用 DHCP 自動取得網路設定

 

依照關鍵字說明,解讀上面的設定檔具有:

  1. 有2個介面 (網路介面卡),一個是實體網路卡 eth0,一個是虛擬網路卡 lo
  2. 實體網路卡 eth0 為自動取得網路設定,若區域網路內有 DHCP Server,則網路卡啟用後應該要能自動向 DHCP Server 取得一組 IP

 

若需要將網路卡設定為固定 IP,設定大概是長這樣 (以 eth0 為例):

iface eth0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.254
dns-nameservers 192.168.0.254 168.95.1.1 8.8.8.8

 

針對新出現的關鍵字做簡單說明:

  • static:使用固定 IP 設定
  • address:固定 IP 位址
  • netmask:網路遮罩
  • gateway:閘道器
  • dns-nameservers:DNS 伺服器,若要使用多個 DNS,則使用空格區隔

 

其他更進階的設定,可以參考 Debain Wiki:

 

修改完網路設定後,需要使用以下指令重新讀取網路設定:

sudo /etc/init.d/networking restart

 

上面的指令是 for all interface,可能會造成部分連線中斷

也可以透過 ifdownifup 指令關閉與開啟網路卡來套用新設定

避免其他沒有進行異動的介面卡網路中斷

ifdown eth0; ifup eth0

 

 


References:
Debian / Ubuntu Linux 網路設定範例 – Tsung’s Blog
networking – How do I use /etc/network/interfaces instead of network-manager – Ask Ubuntu

 
 

留言