參考地址:http://www.hellokvm.com/?p=311
第一步加載8021q模塊
[root@bogon net]# modprobe --first-time 8021q
[root@bogon net]# lsmod | grep 8021
8021q 33208 0
garp 14384 1 8021q
mrp 18542 1 8021q
[root@bogon net]#
第二步創建子接口文件
在 /etc/sysconfig/network-scripts/
目錄中配置 VLAN 接口。配置文件名應為上級接口加上 .
字符再加上 VLAN ID 號碼。例如:如果 VLAN ID 為 100,上級接口為 ens33,那么配置文件名應為 ifcfg-ens33.100
[root@bogon network-scripts]# vim ifcfg-ens33.100
DEVICE=ens33.100
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
VLAN=yes
最后一步重啟網絡使其生效。
[root@bogon network-scripts]# systemctl restart network
注:如果需要在同一接口 eth0 中配置第二個 VLAN,比如 VLAN ID 200,請添加名為 ens33.200
的新文件,文件中包含 VLAN 配置詳情。
知識補充:
各種模塊文件已經存在 /lib/modules/3.10.0-957.el7.x86_64/kernel/ 中,用的時候只需要加載即可
vlan信息文件存在 /proc/net/vlan/ 這里
【Centos7】配置網卡之添加vlan tag(vlan 標簽)
參考地址:https://blog.csdn.net/weixin_44353106/article/details/103682208
Vlan的作用我在這里不詳細展開說明,有興趣的同學可以自行了解,很多時候,我們需要將服務器或者客戶端或者路由器加入同一個vlan中,因此需要統一的vlan標簽,即vlan tag。這里記錄一下曾經踩過的小坑,如何給Centos7添加vlan tag。
話不多說,我們的目的是什么?該在哪里實施呢?
答:目的是在Linux上添加vlan tag,因為vlan是計算機網絡協議的一部分,所以應當在網卡配置上進行相應的操作。而且如果我們的Linux上有多張網卡,就可以設置多個vlan,建議不熟悉的同學先拿虛擬機創建Linux試試手。
假設我們的目的是給網卡添加vlan tag 為 1
su+root密碼進入root權限下
1.ip addr 查看網卡信息,確定要添加vlan tag的網卡,以下圖為例,我們以網卡 eno33559296為目標,准備添加vlan tag,這是未添加前的網卡配置。
2.cd /etc/sysconfig/network-scripts/進入網卡配置文件的目錄,ls找到對應網卡
3.vi ifcfg-eno33559296進行編輯
改變前:
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno33559296
UUID=23b03b79-90f2-495f-a4b7-ad9d7411e913
DEVICE=eno33559296
ONBOOT=yes
IPADDR=100.0.0.1
NETMASK=255.255.255.0
HWADDR=00:0c:29:a9:34:01
改變后
刪除
IPADDR=100.0.0.1
NETMASK=255.255.255.0
增加
PROXY_METHOD=none
BROWSER_ONLY=no
即
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno33559296
UUID=23b03b79-90f2-495f-a4b7-ad9d7411e913
DEVICE=eno33559296
ONBOOT=yes
PROXY_METHOD=none
BROWSER_ONLY=no
HWADDR=00:0c:29:a9:34:01
ESC + : wq 保存信息退出
4.查詢是否有802.1Q模塊,如下所示是表示有的
[root@localhost network-scripts]# lsmod |grep 8021q
8021q 28808 0
garp 14384 1 8021q
mrp 18542 1 8021q
5.接着需要創建一個新的文件,命名為
[root@localhost network-scripts]# vi ifcfg-eno33559296.1
這個后面的.1是一個命名規范,代表vlan tag,如果vlan tag為40,則命名為
vi ifcfg-eno33559296.40。配置信息
DEVICE=eno33559296.1
BOOTPROTO=none
ONBOOT=yes
IPADDR=150.0.0.40
PREFIX=24
NETWORK=150.0.0.0
VLAN=yes
保存退出
6.執行命令
[root@localhost network-scripts]# service NetworkManager stop
Redirecting to /bin/systemctl stop NetworkManager.service
當多個網卡配置不同的vlan tag時,這個命令可以防止沖突,否則會導致無法網卡無法重啟成功!!!
7.執行命令
ip link add link eno33559296 name eno33559296.1 type vlan id 1
8.重啟網卡成功
[root@localhost network-scripts]# service network restart
Restarting network (via systemctl):
[ 確定 ]
9.重啟輸入 ip addr查看網卡配置
代表在某個網卡上添加vlan tag至此添加成功,我們需要實驗一下是否真的有效,ping一下同一vlan tag下的其他設備,交換機也好,服務器也好
[root@localhost network-scripts]# ping 150.0.0.15
PING 150.0.0.15 (150.0.0.15) 56(84) bytes of data.
64 bytes from 150.0.0.15: icmp_seq=1 ttl=64 time=2.48 ms
64 bytes from 150.0.0.15: icmp_seq=2 ttl=64 time=2.56 ms
64 bytes from 150.0.0.15: icmp_seq=3 ttl=64 time=2.82 ms
64 bytes from 150.0.0.15: icmp_seq=4 ttl=64 time=2.31 ms
64 bytes from 150.0.0.15: icmp_seq=5 ttl=64 time=2.45 ms
64 bytes from 150.0.0.15: icmp_seq=6 ttl=64 time=1.58 ms
64 bytes from 150.0.0.15: icmp_seq=7 ttl=64 time=3.03 ms
64 bytes from 150.0.0.15: icmp_seq=8 ttl=64 time=2.72 ms
^C
--- 150.0.0.15 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 7011ms
rtt min/avg/max/mdev = 1.580/2.498/3.039/0.411 ms
證明vlan tag添加成功。
centos 7 下多網卡綁定+ vlan 網卡配置
參考地址:https://www.cnblogs.com/weijie0717/p/6910600.html
一、前言
CentOS7之前系統提供給用戶的是bonding driver來實現鏈路聚合,實際上bonding適用於大多數應用。Bonding driver的架構是由內核空間完全控制、管理。
Team driver又是什么呢?它是被設計用一整套不同的設計和不同的方法來實現bonding能做到的事,它的這種更靈活、更高效。 具體數據:http://rhelblog.redhat.com/2014/06/23/team-driver/
針對現有的bonding配置,如果想從bonding driver轉到team driver,redhat官方還是挺人性化的,提供了一個bond2team的命令行工具。
team工作模式:
roundrobin模式也稱為輪詢模式,它基於每一個包服務器發出的數據包,就會在兩個物理網卡上進行輪詢,即第一個數據包走一張網卡,第二個數據包走第二張網卡,依次輪詢,相當於 bond 中的 mode 0。在交換機上需要配置鏈路聚合。
注意:
(1)roundrobin具有容錯性,當一張網卡down掉,數據包依然發送成功。
(2)在使用roundrobin模式必須要在交換機上做以太通道,不然會出現網絡無法連通。
activebackup模式 主備模式, 相當於 bond 中的 mode 1. 在交換機上不需要做鏈路聚合配置。
二、基礎環境
系統:centos 7 全新安裝的系統。
三、配置
1、查看物理網卡信息:#nmcli dev sh
2、查看網卡鏈接信息。#nmcli con sh
3、創建team接口,根據自己的業務需求,配置工作模式。
#nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name": "roundrobin"}}' (模式:根據業務需求進行配置工作模式)
4、給接口配置IP地址
#nmcli con modify team0 ipv4.address '192.168.1.10/24' ipv4.gateway '192.168.1.1' ipv4.dns '202.106.0.20'
5、設置接口模式為手動模式,取消DHCP
#nmcli con modify team0 ipv4.method manual
6、將物理網卡添加到team中
#nmcli con add type team-slave ifname em1 master team0
#nmcli con add type team-slave ifname em2 master team0
7、重啟網卡 #service network restart
8、查看team0 狀態 #teamdctl team0 state
9、查看連接狀態
10、測試
ok,配置到此完成。
注:如果喜歡使用圖形化界面進行配置的可以使用命令
#nmtui (操作界面比較簡單就不在着重介紹。)
四、后期維護操作
1、啟用team0 接口中的網卡:
#nmcli connection up team-slave-em1
#nmcli connection up team-slave-em2
2、
# teamnl team0 ports
3、
# teamnl team0 options
4、刪除網卡連接信息 #nmcli con del team-slave-em2
5、刪除team0 #nmcli dev del team0
五、centos 7 下 vlan 配置
1、確認內核 已經載入 802.1Q 模組。
如果沒有,使用以下命令將模組載入內核:
# /sbin/modprobe -a 8021q
2、刪除team0 中的IP配置
#vi /etc/sysconfig/network-scripts/ifcfg-team0
刪除IP 和DNS 配置,並保存配置
3、創建VLAN 網卡配置文件。 (例如:要創建一個vlan 632 網卡)
# vi /etc/sysconfig/network-scripts/ifcfg-team0.632
4、交換機配置為trunk 模式,然后重啟服務器。 服務器vlan配置文件保存在:/proc/net/vlan/config
ok 配置完成。