linux常用網絡配置


網卡名稱:

 網絡接口識別並命名相關的udev配置文件:

   /etc/udev/rules.d/70-persistent-net.rules

 卸載網卡驅動:

   modprobe  -r e1000

 裝載網卡驅動:

   modprobe  e1000

 網卡名定義在 /etc/udev/rules.d/70-persistent-net.rules 文件中,定義了網卡命名的詳細方式,

  這個文件是安裝系統時自動生成的

wKioL1fNLfvgm5zhAAAuGUd9aas327.png

 可以在這個文件中,修改NAME選項,以更改網卡名,修改以後需要需改相應的配置文件,否則網卡無法啓動,

 編輯網卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-網卡名

   修改”DEVICE=“項

 修改以後可以使用 service network restart 命令重啓網絡服務

  如果修改配置文件後,自動生效了,那是因爲有 NetworkManager服務在運行,但是這個服務的生效結果完全是靠運氣,所以一般情況下,都是把這個服務給關閉。

可是使用 service NetworkManager status 命令查看服務狀態

service NetworkManager stop   停止此服務

chkconfig NetworkManager off  下次系統啓動時不啓動此服務


網卡配置文件"/etc/sysconfig/network-scripts/ifcfg-eth0"各項所代表的意思:

wKioL1fNLh7z23NrAAJI1jdgqFI024.png




網卡別名:

   工作做經常遇到,在多個網絡環境中來回切換,如果只有一個IP需要來回改動,所以就需要一個網卡綁定多個IP地址,這樣就可以避免來回手動切換網絡。

 網卡別名:

    首先,關閉NetworkManager服務

      service NetworkManager stop

    創建一個配置文件 ,文件名爲網卡的文件名+“:num”如 :

網卡文件爲:ifcfg-eth0 ,創建文件“ifcfg-eth0:1",冒號後跟的數字,可以隨意指定。


示例:虛擬網卡實現一個網卡多個地址


#cd /etc/sysconfig/network-scripts
#vim ifcfg-eth0
    DEVICE="eth0"
    BOOTPROTO="dhcp"
    ONBOOT="yes"
    ~
#vim ifcfg-eth0:1
    DEVICE="eth0:1"
    IPADDR=10.1.1.60
    PREFIX=16
    GATEWAY=10.1.1.254
    DNS1=8.8.8.8
    ONPARENT=yes

重啓網絡服務:

wKioL1fNLnqz4HEJAAAiWfp911U253.png

查看網卡信息:

wKioL1fNLq-R_WD7AABqIgYUDXE898.png


使用網卡別名需要注意的是:

  對虛擬主機有用

  將多個IP地址綁定到一個NIC上,命名格式:

    eth0:1

    eth0:2

    eth0:3

  爲每個設備別名生成獨立的接口配置文件

     1、關閉NetworkManager服務

    2、配置文件命名格式ifcfg-ethX:xxx

     3、必須使用靜態聯網

        DEVICE=eth0:0

        IPADDR=10.10.10.10

        NETMASK=255.0.0.0

        ONPARENT=yes

    注意:重啓網絡服務service network restart 生效

    參考/usr/share/doc/initscripts-*/sysconfig.txt




網絡接口配置-bonding

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


Bonding的工作模式:

Mode 0 (balance-rr)

輪轉(Round-robin)策略:從頭到尾順序的在每一個slave接口上面發送數據包。本模式提供負載均衡和容錯的能力

Mode 1 (active-backup)

活動-備份(主備)策略:在綁定中,只有一個slave被激活。當且僅當活動的slave接口失敗時纔會激活其他slave。爲了避免交換機發生混亂此時綁定的MAC地址只有一個外部端口上可見

Mode 3 (broadcast)

廣播策略:在所有的slave接口上傳送所有的報文。本模式提供容錯能力。Bonding配置



創建bonding設備的配置文件

#vim /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS=“miimon=100 mode=0”
#vim  /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no


miimon是用來進行鏈路監測的。如果miimon=100,那麼系統每100ms 監測一次鏈路連接狀態,如果有一條線路不通就轉入另一條線路

 查看bond0狀態:/proc/net/bonding/bond

 關於bonding的詳細配置請參照:

    /usr/share/doc/kernel-doc-version/Documentation/networking/bonding.txt


示例:

創建Mode 1 (active-backup)

首先確保NetworkManager 服務處於停止狀態

# service NetworkManager stop

在/etc/sysconfig/network-scripts目錄下創建bonding配置文件

# vim ifcfg-bond0

DEVICE=bond0
IPADDR=10.1.252.60
PREFIX=16
GATEWAY=10.1.0.1
DNS1=8.8.8.8
BONDING_OPTS="miimon=100 mode=1"

而後編輯第一塊網卡的配置文件

# vim ifcfg-eth0

DEVICE=eth0
SLAVE=yes
MASTER=bond0

編輯第二塊網卡的配置文件:

# vim ifcfg-eth1

DEVICE=eth1
SLAVE=yes
MASTER=bond0

重啓網絡服務:

# service network restart

成功執行ifconfig 命令可以看到兩塊網卡的MAC地址完全一樣,及兩個網卡共用一個MAC地址

wKioL1fNMwyAfxP-AABTZv2ahnA997.png

查看/proc/net/bonding/bond0文件可以看到當前工作的網卡

wKioL1fNMyyj9IzmAAA9JcRnSBM914.png

測試:使用另一臺機器,ping這個服務器,ping時手工切斷eth0,由於設置的時間是100ms檢測一次,所以100ms後eth1頂替eth0工作,中間交接時間丟失一個是數據包

wKioL1fNM0-AvZmqAABNX-lbwWc683.png

再次查看/proc/net/bonding/bond0文件可以發現eth1處於活躍狀態。

wKiom1fNM2_wmAcjAAAvT29Rasg492.png




跨網絡通信:

跨網絡通信:路由

路由分類:

    主機路由

    網絡路由

    默認路由


路由管理命令:

查看:route -n

添加:route add

route add [-net|-host] target [netmask Nm] [gwGw] [[dev] If]

例:

 目標:192.168.1.3 網關:172.16.0.1

# route add -host 192.168.1.3 gw172.16.0.1 dev eth0

 目標:192.168.0.0 網關:172.16.0.1

# route add -net 192.168.0.0 netmask 255.255.255.0 gw172.16.0.1 dev eth0
# route add -net 192.168.0.0/24 gw172.16.0.1 dev eth0

 默認路由,網關:172.16.0.1

# route add -net 0.0.0.0 netmask 0.0.0.0 gw172.16.0.1
# route add default gw172.16.0.1

刪除:route del

route del [-net|-host] target [gwGw] [netmask Nm] [[dev] If]

例:

目標:192.168.1.3 網關:172.16.0.1

# route del -host 192.168.1.3

目標:192.168.0.0 網關:172.16.0.1

# route del -net 192.168.0.0 netmask 255.255.255.0



示例:

在VMware中,使用兩臺主機當作路由設備,分別爲R1,R2。另外需要兩臺客戶機,實現跨網段訪問。

R1:兩個端口,分別爲:

    eth0:192.168.60.1/24

    eth1:10.10.0.1/8

R2:兩個端口,分別爲:

    eth0:172.30.0.1/24

    eth1:10.10.0.2/8

客戶機1:

    192.168.60.60/24

客戶機2:

    172.30.0.60/16

 如圖所示,就可以實現客戶機1與客戶機二的相互訪問,由於R1與R2需要互聯,所以他們的某個端口需要在同一個網段中。

wKiom1fNNlHDTunHAAA9dWCV4_s338.png

具體步驟如下:

設置R1:

首先關閉,NetworkManager服務

# service NetworkManager stop

打開路由轉換:

 將文件/proc/sys/net/ipv4/ip_forword文件改爲1,處於開啓狀態

#   echo  1 > /proc/sys/net/ipv4/ip_forword

設置R1端口eth0:

#  vim  /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    IPADDR=192.168.60.1
    PREFIX=24

保存退出


設置R1端口eth1:

 # vim  /etc/sysconfig/network-scripts/ifcfg-eth1
    DEVICE=eth1
    IPADDR=10.10.0.1
    PREFIX=8

保存退出


重啓網絡服務:

# service network restart

添加路由表:

  路由表相鄰網段自動生成,只需要添加不相鄰的網段,而設置網關需要設置爲下一個路由器的臨近接口。

#  route add -net 172.30.0.0/16  gw 10.10.0.2 dev eth1

清空防火牆列表:

# iptables -F

R1詳細信息:

wKiom1fNNwuxI6LlAABFH7iW0Iw185.png

wKioL1fNNwvCNc6-AAAckrzkTRw609.png


設置R2:

步驟和設置R1移至,只是一些參數不同,

 首先關閉,NetworkManager服務:

    # service NetworkManager stop

打開路由轉換:

  將文件/proc/sys/net/ipv4/ip_forword文件改爲1,處於開啓狀態

        # echo  1 > /proc/sys/net/ipv4/ip_forword

設置R2端口eth0:

#  vim  /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
IPADDR=172.30.0.1
PREFIX=16

保存退出

設置R2端口eth1:

# vim  /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1
IPADDR=10.10.0.2
PREFIX=8

保存退出

重啓網絡服務:

# service network restart

添加路由表:

# route add -net 192.168.60.0/24  gw 10.10.0.1 dev eth1

清空防火牆列表:

# iptables -F

R2詳細信息:

wKioL1fNN8mQysmxAABEg6Qh8Dg028.png

wKiom1fNN8mjYORyAAAcQl5j-fw082.png


客戶機1:

wKioL1fNN-rxJ5zrAAAQJQDWD9E410.png

客戶機2:

wKiom1fNN_fQHAvrAAAVzJA5MAg004.png

現在即可實現客戶機1與客戶機2之間的相互訪問

wKiom1fNOA6ycH9yAAAVHPd6mNs435.png

由於,跨越了兩個路由,所以ttl爲64-2,爲62。



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