Linux網(wǎng)卡參數(shù)配置方法教程
Linux網(wǎng)卡參數(shù)配置方法教程
在 Linux 下如果想修改網(wǎng)卡的參數(shù)有很多種方法,第一種方法是修改 /etc/network/interfaces 文件,這種方法可以在重啟后依然有效;另外一種方法是使用 ifconfig 指令,這種方法只能臨時性的修改網(wǎng)卡參數(shù),在重啟后會失效。接下來是小編為大家收集的Linux 網(wǎng)卡參數(shù)配置教程,希望能幫到大家。
Linux 網(wǎng)卡參數(shù)配置教程
修改 interfaces 文件
interfaces 文件在 /etc/network/ 文件夾下,是網(wǎng)絡接口配置文件,里面包含了所有網(wǎng)絡接口的配置信息。
interfaces 文件有自己的編寫規(guī)則,其中以 '#' 開頭的行會被系統(tǒng)忽略,因此可以作為注釋使用。每個指令占一行,如果寫不下可以用 '\' 符號作為此行結(jié)尾,在下一行接著寫命令。
文件由 "iface","mapping","auto","allow-" 和 "source" 字段組成。下面是一個例子:
auto lo eth0
allow-hotplug eth1
iface lo inet loopback
source interfaces.d/machine-dependent
mapping eth0
script /usr/local/sbin/map-scheme
map HOME eth0-home
map WORK eht0-work
iface eth0-home inet static
address 192.168.1.1
netmask 255.255.255.0
up flush-mail
iface eth0-work inet dhcp
iface eth1 inet dhcp
以 "auto" 開頭的行是用來確定物理網(wǎng)絡接口將會被啟動當 ifup -a 指令被運行時(這個指令會在系統(tǒng)啟動腳本中使用,因此開機時會自動啟動以 "auto" 開頭設置的網(wǎng)卡)。在 "auto" 字段的后面應該緊跟著物理接口的名字,interfaces 文件中可以設置多個 "auto" 方式啟動的網(wǎng)絡接口,ifup 指令會按照順序啟動網(wǎng)絡設備。
以 "allow-" 開頭的行是用來確定通過哪種子系統(tǒng)來啟動那些應該被自動啟動的網(wǎng)絡設備。這樣就可以使用指令 ifup --allow=hotplug 來啟動那些已經(jīng)設置 "allow-hotplug" 的網(wǎng)絡設備。
NOTE:"allow-auto" 和 "auto" 是同義詞。
以 "source" 開頭的行是用來包含其他文件的字段,因此可以把配置拆成幾個文件。 "source" 后面接的是文件路徑, shell 下面的通配符可以使用。
以 "mapping" 開頭的行是用來給將要啟動的物理設備接口確定邏輯接口名。"mapping" 字段的第一行是以 "mapping" 開始的,后面跟著 shell 下 glob 指令語法相同的模式匹配(如 eth*)。每個 "mapping" 字段必須包含一個腳本定義,這個腳本使用物理設備接口名作為參數(shù),并且會把下面所有以 "map" 開頭的字段(不包括 "map" 本身)提供給它作為輸入。在腳本執(zhí)行結(jié)束前會輸出一段字符串,具體例子可以參考 /usr/share/doc/ifupdown/examples 下面的例子文件。
映射一個包含搜索映射匹配模式的名字并且執(zhí)行使用第一個匹配的字段來運行腳本,腳本輸出的名字就是原來網(wǎng)卡將要被映射的名字。
如:
通過PING配置網(wǎng)絡
Linux 在處理 PCMCIA 卡的時候有比較好的方式,可以在 PCMICA 卡插入時通過一個配置腳本來確定網(wǎng)絡地址。但是,筆記本上的網(wǎng)卡是筆記本自帶的,并非 PCMCIA 卡,由于經(jīng)常需要奔波于辦公室、實驗室和家之間,就經(jīng)常需要修改網(wǎng)絡地址。如果我去的每一個地方都安裝了 DHCP ,那么我就可以把 eth0 設定成為 DHCP 的方式,然而我的情況卻是:在家可以使用DHCP,在辦公室和實驗室都要使用固定地址。
為了解決這個問題,我們可以使用一種 mapping 機制,這種方法的基本原理是通過運行一個程序來確定目前所處的環(huán)境,并為這個環(huán)境選擇一套配置。我現(xiàn)在使用的就是通過ping一個網(wǎng)絡的網(wǎng)關(guān)來確定當前網(wǎng)卡究竟連接在哪個網(wǎng)絡上,然后再選擇這個網(wǎng)絡的配置。
首先,在 /usr/share/doc/ifupdown/examples 中有一個文件 ping-places.sh ,把它復制到 /etc/network 目錄中,然后 chmod a+x /etc/network/ping-places.sh。下面就是編輯 /etc/network/interfaces 文件,下面是一個例子:
mapping eth0 ①
script /etc/network/ping-places.sh
map 192.168.0.107/24 192.168.0.1 home
map 10.1.133.165/24 10.1.133.1 office
map 10.1.0.107/24 10.1.0.1 lab
iface home inet dhcp ②
iface office inet static ③
address 10.1.133.165
netmask 255.255.255.0
gateway 10.1.133.1
up cp /etc/resolv.conf.school /etc/resolv.conf ④
iface lab inet static
address 10.1.0.107
netmask 255.255.255.0
gateway 10.1.0.1
up cp /etc/resolv.conf.school /etc/resolv.conf
表示對于網(wǎng)絡設備調(diào)用腳本 /etc/network/ping-places.sh ,如果能夠用地址 192.168.0.107/24
ping 通地址 192.168.0.1 ,則將 eth0 映射為設備 home ,即啟動 home 的配置。后面的 office 和 lab 與其類似。
表示虛擬設備 home 使用 DHCP 分配的地址。
表示虛擬設備 office 使用固定地址。
表示在啟動這個網(wǎng)絡設備后還要執(zhí)行 cp 命令,從而指定一個域名解析方法。除了 up 以外,還有 pre-up、down 和 post-down 可以用來指定在啟動或停止網(wǎng)絡設備前后執(zhí)行的命令。
NOTE:在 /usr/share/doc/ifupdown/examples 中有一些配置網(wǎng)絡的例子和需要的腳本。
ifup 通常會給一個物理接口名作為它的第一個沒有選項的參數(shù)。ifup 同時也會使用這個名字作為接口的初始化邏輯名,除非它被指定了一個 "=LOGICAL" 格式的后綴,這樣 ifup 會使用 "LOGICAL" 作為接口的初始化邏輯名。
看了“Linux 網(wǎng)卡參數(shù)配置教程”還想看:
1.Ubuntu系統(tǒng)如何修改網(wǎng)絡參數(shù)