雖然也可以用命令進行臨時修改(ifconfig來設置IP,用route來配置網關,用hostname來配置主機名等等),但是重啟后會丟失。所以本文主要通過修改相關配置文件來實現:
-
配置dns、網關、ip地址
-
修改網卡名字
-
單網卡多IP配置
-
多網卡單IP配置
本次系統運行環境:
配置dns、網關、ip地址
首先,我們對網卡配置相關的主要的幾個文件簡要作個說明:
/ect/hosts 計算機DNS域名解析的本地配置文件,記錄了domain name和ip的對應關系;
/etc/resolv.conf DNS客戶端文件,主要指向提供DNS服務器IP,(即告訴本機使用哪個DNS服務器);
/etc/sysconfig/network 默認設置網卡的開關和hostname;
/etc/udev/rules.d/70-persistent-net.rules 定義了詳細的網卡命名規則
/etc/sysconfig/network-scripts/ifcfg-eth0 默認網卡eth0的詳細配置;如有多塊網卡,則遞加如ifcfg-eth1、ifcfg-eth2…以此類推
1.1. 配置DNS
編輯文件/etc/resolv.conf ,添加文本格式:nameserver DNS serverIP
我們也可以給本機添加指定的DNS條目,/ect/hosts里添加如下圖文本:
當我們ping www.baidu.com時,計算機會先查找本機/ect/hosts 是否存在對應條目,如果有則返回對應 IP地址;如果沒有,則會向/etc/resolv.conf里的DNS服務器進行域名解析。
1.2. 配置網關
編輯文件/etc/sysconfig/network,如下圖:
此文件默認只有2行,第1行開啟(關閉)網卡,第2行定義了計算機的hostname,我們可以在此修改hostname,這里的hostname僅作本機使用,同網段內多臺計算機的hostname是可以相同的,這與windows的計算機名有區別。
我們要設置網關,則添加圖中第2條文本。
1.3. 配置ip
CentOS6對應每塊網卡都有一個獨立的配置文件,他們存放在/etc/sysconfig/network-scripts/目錄下,以ifcfg-為文件名前綴,為了提高識別度,通常以接口命名方式做后綴。(例如以太網以縮寫eth命名,多個網卡則eth[0,1,2,3….]遞加)。注意:配置文件名必須以ifcfg-開頭,后面的接口名可以任意。
解讀配置文件:
主要參數說明:
DEVICE | 此配置文件對應的設備名稱 |
ONBOOT | yes|no 在系統引導過程中,是否激活此接口,默認是激活 |
UUID | 此設備的唯一標識 |
IPV6INIT | 是否初始化IPv6 |
BOOTPROTO | 激活此接口時使用什么協議來配置接口屬性,常用的有dhcp|bootp|static|none |
TYPE | 接口類型,默認Ethernet |
DNS1 | 第一DNS服務器指向 |
DNS2 | 備用DNS服務器指向 |
DOMAIN | DNS搜索域 |
IPADDR | IP地址 |
NETMASK | 子網掩碼,CentOS7支持使用PREFIX以長度方式指明子網掩碼 |
GATEWAY | 指定網關 |
USERCTL | 是否允許普通用戶控制此設備 |
PEERDNS | 如果BOOTPROTO的值為"dhcp",是否允許dhcp server分配的dns服務器指向覆蓋本地手動指定的dns服務器指向(即/etc/resolv.conf文件內的指向),默認是允許。 |
NM_CONTROLLED | 是否使用NetworkManager服務來管理接口 |
對于我們手工配置來說,有兩種情況:dhcp分配IP和指定靜態IP
1.3.1.配置dhcp獲取IP的網卡
對于有dhcp服務器的客戶端網卡,我們僅需要2行即可按成配置:
1.3.1.配置靜態IP網卡
要配置靜態IP的網卡,我們僅需要3行即可按成配置:
如上配置,即可進行本地局域網通信。這是保證本地通信的最低要求。要接入Internet當然需要配置網關和DNS1:
這樣我們就完成了網卡配置的基本要求了。要配置生效,我們還需要重啟network服務:
[root@IP60-CentOS6 ~]# >>service network restart
修改網卡名字
在CentOS6系統的/etc/udev/rules.d/目錄下,存放著許多的設備規則文件,其中70-persistent-net.rules定義了詳細的網卡命名規則。如果刪除此文件,重啟計算機后,也會自動生成。(如果配置網卡過多,凌亂亂了,可以通過刪除此文件,重啟獲取系統分配的網卡名)
在此我們修改eth0為net2016:
[root@IP60-CentOS6 ~]# >>vim /etc/udev/rules.d/70-persistent-net.rules
重啟計算機后,可以看到:
此時網卡名已經被修改了,但是由于沒有對應的net2016的配置,所以是無IP的,如果是遠程登錄計算機的話,請注意這點,應修改網卡配置后再重啟。
單網卡多IP配置
有時候我們需要接入多個網絡,可是只有一個網卡,此時我們就需要給網卡添加多個IP。比如要給eth0網卡配置IP地址:10.10.10.10/24和10.10.20.10/24,我們只需要在/etc/sysconfig/network-scripts目錄下添加兩個配置文件 :
保存退出后重啟:
多網卡單ip配置
將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡,可以為我們提供高可用性的網絡環境,這樣即使其中的一塊物理網卡出現故障,也不會導致連接中斷。CentOS6是通過bonding,虛擬一塊網卡對外提供連接,
物理網卡被修改為相同的MAC地址。
Bonding的工作模式:
-
Mode 0 (balance-rr)
輪轉( Round-robin)策略:從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡和容錯的能力 -
Mode 1 (active-backup)
活動-備份(主備)策略:在綁定中,只有一個slave被激活。當且僅當活動的slave接口失敗時才會激活其他slave。為了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見 -
Mode 3 (broadcast)
廣播策略:在所有的slave接口上傳送所有的報文。本模式提供容錯能力
這里我們用設置eth0和eth1兩張物理網卡綁定成虛擬網卡bonding0,
首先我們在/etc/sysconfig/network-scripts/下創建虛擬網卡bonding0的配置文件,并作如下配置:
說明:
-
miimon 是用來進行鏈路監測的。如果miimon=100,那么系統每100ms 監測一次鏈路連接狀態,如果有一條線路不通就轉入另一條線路
重啟電腦后可以看到網卡已經正常工作了:
我們也可以通過cat /proc/net/bonding/bond0 查看bonding的工作狀態:
原創文章,作者:昭其,如若轉載,請注明出處:http://www.www58058.com/43801