RedHat 網絡配置

Linux 的網絡配置基本上是通過修改幾個配置文件來實現的,雖然也可以用ifconfig來設置IP,用route來配置默認網關,用hostname來配置主機名,但是重啓後會丟失。

  下面是相關的配置文件:

  /ect/hosts        配置主機名和IP地址的對應,對本機提供解析

  /etc/resolv.conf      配置域名(在hosts內解析不到時此域名生效)

  /etc/sysconfig/network      配置主機名和網關

  /etc/sysconfig/network-scripts/ifcfg-eth0 配置IP、Mask等網絡參數

  一、網卡配置

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0

  ONBOOT=yes

  BOOTPROTO=static

  IPADDR=192.168.1.250

  NETMASK=255.255.255.0

  GATEWAY=192.168.76.1

  ifconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127

  ifconfig eth0:0 192.168.0.253 netmask 255.255.255.0

  ifconfig eth0:1 192.168.0.252 netmask 255.255.255.0

  ifconfig eth0 down

  ifconfig eth0 up

  二、多網卡配置:

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0

  BOOTPROTO=static

  IPADDR=192.168.1.2

  NETMASK=255.255.255.0

  ONBOOT=yes

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth1

  BOOTPROTO=static

  IPADDR=222.157.4.82

  NETMASK=255.255.255.128

  ONBOOT=yes

  vi   /etc/rc.d/rc.local

  route add -net 192.168.0.0/24 gw 192.168.0.254 dev eth0

  route add -net 222.157.0.0/16 gw 222.157.66.1 dev eth1

 

  三、網關配置:

  注意:以下用命令設置的方式設置完後需要將命令加入到 /etc/rc.d/rc.local 中,否則重啓後設置被自動清除!

  1、在 /etc/sysconfig/network-scripts/ifcfg-eth0 中配置;

  GATEWAY=192.168.76.1

  2、在 /etc/sysconfig/network 中配置:

  cat /etc/sysconfig/network

  NETWORKING=yes

  HOSTNAME=zhaohang.com

  GATEWAY=192.168.76.1

  3、用命令設置:

  如果只需要添加默認路由可以這樣設置:

  route add default gw 192.168.1.1

  route del default gw 192.168.1.254 (可以刪除默認路由,用此方法改變後幾分鐘就可以生效.)

  如果兩個網卡均需要網關可以這樣設置:

  route add -net 192.168.0.0/24 gw 192.168.0.254 dev eth0

  route add -net 222.157.0.0/16 gw 222.157.66.1 dev eth1

  備註:設置好路由或默認網關以後可以用命令查看:

  route -n

  netstat -rn

  route print (For windows)

  四、域名配置:

  cat /etc/resolv.conf

  nameserver 202.96.209.5

  五、單網卡綁定多個IP

  有時,我們需要在一塊網卡上配置多個IP,我們還需要爲eth0配置IP 192.168.168.2和192.168.168.3。

  那麼需要再在/etc/sysconfig/network-scripts/ 下新建兩個配置文件:

  cat /etc/sysconfig/network-scripts/ifcfg-eth0:0

  DEVICE=eth0:0

  BOOTPROTO=static

  IPADDR=192.168.1.2

  NETMASK=255.255.255.0

  ONBOOT=yes

  cat /etc/sysconfig/network-scripts/ifcfg-eth0:1

  DEVICE=eth0:1

  BOOTPROTO=static

  IPADDR=192.168.1.3

  NETMASK=255.255.255.0

  ONBOOT=yes

  六、多個網卡綁定成一塊虛擬網卡

  爲了提供網絡的高可用性,我們可能需要將多塊網卡綁定成一塊虛擬網卡對外提供服務,這樣即使其中的一塊物理網卡出現故障,也不會導致連接中斷。

  所謂bonding,就是將多塊網卡綁定同一IP地址對外提供服務,可以實現高可用或者負載均衡。當然,直接給兩塊網卡設置同一IP地址是不可能的。通過bonding,虛擬一塊網卡對外提供連接,物理網卡的被修改爲相同的MAC地址。Kernels 2.4.12及以後的版本均提供bonding模塊,以前的版本可以通過patch實現.

 

  比如我們可以將eth0和eth1綁定成虛擬網卡bond0:

  1、首先在/etc/sysconfig/network-scripts/下創建虛擬網卡bond0的配置文件ifcfg-bond0:

  cat /etc/sysconfig/network-scripts/ifcfg-bond0

  DEVICE=bond0

  BOOTPROTO=none

  BROADCAST=192.168.168.255

  IPADDR=192.168.168.1

  NETMASK=255.255.255.0

  NETWORK=192.168.168.0

  ONBOOT=yes

  TYPE=Ethernet

  GATEWAY=192.168.168.250

  USERCTL=no

  2、然後分別修改eth0和eth1的配置文件:

  cat /etc/sysconfig/network-scripts/ifcfg-eth0

  DEVICE=eth0

  BOOTPROTO=none

  ONBOOT=yes

  USERCTL=no

  MASTER=bond0

  SLAVE=yes

  cat /etc/sysconfig/network-scripts/ifcfg-eth1

  DEVICE=eth1

  BOOTPROTO=none

  ONBOOT=yes

  USERCTL=no

  MASTER=bond0

  SLAVE=yes

  3、在/etc/modules.conf 文件中添加如下內容(如果沒有該文件,則新建一個):

  [因爲linux的虛擬網卡是在內核模塊中實現的,所以需要安裝的時候已經裝好該module]

  alias bond0 bonding

  options bond0 miimon=100 mode=1 primary=eth0

  其中miimon=100表示每100ms檢查一次鏈路連接狀態,如果不通則會切換物理網卡,mode=1表示主備模式,也就是隻有一塊網卡是active的,只提供失效保護。如果mode=0則是負載均衡模式的,所有的網卡都是active。還有其他一些模式很少用到,primary=eth0表示主備模式下eth0爲默認的active網卡。

  4、最後,在/etc/rc.local中加入

  modprobe bonding miimon=100 mode=1

  5、重啓機器後可以看到虛擬網卡已經生效,可以通過插拔兩個物理網卡的網線來進行測試,不過linux中網卡接管的時間好象比較長。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章