Ubuntu ⽹絡配置
文章目錄
ubuntu 17.04及之前的靜態IP配置⽅式
Ubuntu 從 17.10 開始,已放棄在 /etc/network/interfaces ⾥固定IP的配置,⽽是改成 netplan ⽅式,
配置⽂件是:/etc/netplan/01-netcfg.yaml
//查看配置文件
cat /etc/network/interfaces
---------------------------------
//配置文件內容如下
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto eth0 #⽹卡⾃啓動,寫⾃⼰要配置IP的實際⽹卡名稱
iface eth0 inet static #配置靜態IP,寫⾃⼰要配置IP的實際⽹卡名稱
address 172.18.3.12 #IP地址
netmask 255.255.0.0 #掩碼
gateway 172.18.0.1 #⽹關
dns-nameservers 223.6.6.6 #DNS
dns-nameservers 223.5.5.5
------------------------------
//重啓⽹絡服務
/etc/init.d/networking restart
systemctl restart networking.service
ubuntu 18.04配置靜態IP地址
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
--------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
addresses: [ 172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [ 233.6.6.6,180.76.76.76 ]
-------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
ubuntu 18.04配置多⽹卡靜態IP以及靜態路由
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
addresses: [ 172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [ 233.6.6.6,180.76.76.76 ]
eth1:
dhcp4: no
dhcp6: no
addresses: [10.20.26.104/16]
routes:
- to: 172.20.0.0/16
via: 10.20.0.1
- to: 10.20.0.0/16
via: 10.20.0.1
- to: 10.2.0.0/16
via: 10.20.0.1
- to: 10.8.0.0/16
via: 10.20.0.1
---------------------------
//重新加載網卡配置文件
sudo netplan apply
ubuntu 18.04的單⽹卡橋接配置
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
interfaces:
- eth0
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
ubuntu 18.04多⽹卡的橋接配置,將br0和br1分別橋接到eth0和eth1
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
interfaces:
- eth0
br1:
dhcp4: no
dhcp6: no
addresses: [10.20.26.104/16]
routes:
- to: 172.20.0.0/16
via: 10.20.0.1
- to: 10.20.0.0/16
via: 10.20.0.1
- to: 10.2.0.0/16
via: 10.20.0.1
- to: 10.8.0.0/16
via: 10.20.0.1
interfaces:
- eth1
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
ubuntu 18.04的雙⽹卡綁定配置
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
parameters:
mode: active-backup
mii-monitor-interval: 100
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
//重啓,才能生效
reboot
//查看bond0工作狀態信息
root@bj-magedu-v-study-104:~# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:78:19:34
Slave queue ID: 0
Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:78:19:2a
Slave queue ID: 0
雙網卡綁定Bond模式
七種bond模式說明:
- 第⼀種模式:mod=0,即:(balance-rr) Round-robin policy(平衡掄循環策略)
特點:- 傳輸數據包順序是依次傳輸(即:第1個包⾛eth0,下⼀個包就⾛eth1….⼀直循環下去,直到最後⼀個傳輸完畢),
- 此模式提供負載平衡和容錯能⼒。
- 第⼆種模式:mod=1,即: (active-backup) Active-backup policy(主-備份策略)
特點:- 只有⼀個設備處於活動狀態,當⼀個宕掉另⼀個⻢上由備份轉換爲主設備。
- mac地址是外部可⻅得,從外⾯看來,bond的MAC地址是唯⼀的,以避免switch(交換機)發⽣混亂。
- 此模式只提供了容錯能⼒;由此可⻅此算法的優點是可以提供⾼⽹絡連接的可⽤性,
- 但是它的資源利⽤率較低,只有⼀個接⼝處於⼯作狀態,在有 N 個⽹絡接⼝的情況下,資源利⽤率爲1/N。
- 第三種模式:mod=2,即:(balance-xor) XOR policy(平衡策略)
特點:- 基於指定的傳輸HASH策略傳輸數據包。缺省的策略是:(源MAC地址 XOR ⽬標MAC地址) % slave數量。
- 其他的傳輸策略可以通過xmit_hash_policy選項指定,
- 此模式提供負載平衡和容錯能⼒。
- 第四種模式:mod=3,即:broadcast(⼴播策略)
特點:- 在每個slave接⼝上傳輸每個數據包,此模式提供了容錯能⼒。
- 第五種模式:mod=4,即:(802.3ad) IEEE 802.3adDynamic link aggregation(IEEE 802.3ad 動態鏈接聚合)
特點:- 創建⼀個聚合組,它們共享同樣的速率和雙⼯設定。
- 根據802.3ad規範將多個slave⼯作在同⼀個激活的聚合體下。
- 必要條件:
條件1:ethtool⽀持獲取每個slave的速率和雙⼯設定。
條件2:switch(交換機)⽀持IEEE 802.3ad Dynamic link aggregation。
條件3:⼤多數switch(交換機)需要經過特定配置才能⽀持802.3ad模式。
- 第六種模式:mod=5,即:(balance-tlb) Adaptive transmit load balancing(適配器傳輸負載均衡)
特點:- 不需要任何特別的switch(交換機)⽀持的通道bonding。
- 在每個slave上根據當前的負載(根據速度計算)分配外出流量。如果正在接受數據的slave出故障了,另⼀個slave接管失敗的slave的MAC地址。
- 該模式的必要條件:
ethtool⽀持獲取每個slave的速率
- 第七種模式:mod=6,即:(balance-alb) Adaptive load balancing(適配器適應性負載均衡)
特點:- 該模式包含了balance-tlb模式,同時加上針對IPV4流量的接收負載均衡(receive load balance,rlb)
- ⽽且不需要任何switch(交換機)的⽀持
雙⽹卡綁定+橋接
⽹卡綁定⽤於提供⽹卡接⼝冗餘以及⾼可⽤和端⼝聚合功能,橋接⽹卡再給需要橋接設備的服務使⽤。
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
parameters:
mode: active-backup
mii-monitor-interval: 100
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
interfaces:
- bond0
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
//重啓,才能生效
reboot
//查看bond0工作狀態信息
root@bj-magedu-v-study-104:~# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:78:19:34
Slave queue ID: 0
Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:78:19:2a
Slave queue ID: 0
內外多網卡綁定
多網絡情況下實現網卡綁定
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
eth2:
dhcp4: no
dhcp6: no
eth3:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
parameters:
mode: active-backup
mii-monitor-interval: 100
bond1:
interfaces:
- eth2
- eth3
addresses: [10.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
parameters:
mode: active-backup
mii-monitor-interval: 100
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
//重啓,才能生效
reboot
內⽹多⽹卡綁定+橋接
//編輯配置文件
vim /etc/netplan/01-netcfg.yaml
----------------------------------------
//配置文件內容如下
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
eth1:
dhcp4: no
dhcp6: no
eth2:
dhcp4: no
dhcp6: no
eth3:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- eth0
- eth1
parameters:
mode: active-backup
mii-monitor-interval: 100
bond1:
interfaces:
- eth2
- eth3
parameters:
mode: active-backup
mii-monitor-interval: 100
bridges:
br0:
dhcp4: no
dhcp6: no
addresses: [172.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
interfaces:
- bond0
br1:
dhcp4: no
dhcp6: no
addresses: [10.20.26.104/16]
gateway4: 172.20.0.1
nameservers:
addresses: [180.76.76.76]
interfaces:
- bond1
routes:
- to: 172.20.0.0/16
via: 10.20.0.1
- to: 10.20.0.0/16
via: 10.20.0.1
- to: 10.2.0.0/16
via: 10.20.0.1
- to: 10.8.0.0/16
via: 10.20.0.1
--------------------------------------------
//重新加載網卡配置文件
sudo netplan apply
//重啓,才能生效
reboot