单网卡ovs网卡配置

CentOS单网卡配置OVS教程
本文介绍如何在CentOS系统上针对单个网卡em1进行Open vSwitch (OVS) 的配置,包括将物理网卡em1转变为OVS端口,并创建名为br-ex的OVS网桥。

openstack 和kolla部署过程中经常需要配置ovs,单网卡的时候就需要增加一个网桥配置

环境说明

centos
单网卡 em1
em1原配置

# cat /etc/sysconfig/network-scripts/ifcfg-em1
TYPE=Ethernet
BOOTPROTO=static
DEVICE=em1
ONBOOT=yes
IPADDR=192.168.1.1
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DNS1=114.114.114.114

修改配置

修改 em1 配置

# cat /etc/sysconfig/network-scripts/ifcfg-em1
TYPE=OVSPort
DEVICE=em1
ONBOOT=yes
DEVICETYPE=ovs
OVS_BRIDGE=br-ex

2. 增加 br-ex 配置, 新建 ifcfg-br-ex 文件

# vim /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=192.168.1.1
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DNS1=114.114.114.114

网卡配置完成,ovs本身配置跟具体环境有关,有的环境是脚本里面写好的,有的需要手动配置

在使用 Open vSwitch(OVS)时,常见的需求是将物理网卡加入 OVS 网桥,并将原物理网卡的 IP 地址配置OVS 网桥上,以保证网络连通性。 --- ## ✅ 示例:使用 `ovs-vsctl` 创建网桥并将物理网卡加入网桥,并配置 IP 地址 ### 📌 假设: - 物理网卡:`eth0` - 要创建的 OVS 网桥:`ovsbr0` - 原 `eth0` 的 IP 是:`192.168.1.100/24` - 网关:`192.168.1.1` - DNS:`8.8.8.8` --- ## 🛠️ 步骤 1:安装 Open vSwitch Ubuntu/Debian: ```bash sudo apt update sudo apt install openvswitch-switch ``` CentOS/RHEL: ```bash sudo yum install openvswitch sudo systemctl start openvswitch sudo systemctl enable openvswitch ``` --- ## 🛠️ 步骤 2:创建 OVS 网桥并添加物理网卡 ```bash # 创建 OVS 网桥 sudo ovs-vsctl add-br ovsbr0 # 将物理网卡 eth0 添加到网桥中 sudo ovs-vsctl add-port ovsbr0 eth0 ``` > ⚠️ 注意:执行完此操作后,`eth0` 将不再具有 IP 地址,所有 IP 都应配置在 `ovsbr0` 上。 --- ## 🛠️ 步骤 3:配置 IP 地址到 OVS 网桥 ```bash # 给 ovsbr0 配置 IP 地址和子网掩码 sudo ip addr add 192.168.1.100/24 dev ovsbr0 # 设置默认网关 sudo ip route add default via 192.168.1.1 # 设置 DNS(可写入 /etc/resolv.conf) echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf ``` --- ## 🛠️ 步骤 4:启动网桥接口 ```bash sudo ip link set ovsbr0 up ``` --- ## 🧪 验证网络连通性 ```bash ping -c 4 8.8.8.8 ``` --- ## 🧼 可选:清空物理网卡的 IP 地址(避免冲突) ```bash sudo ip addr flush dev eth0 ``` --- ## 📁 持久化配置(重启后保留) 在大多数系统中,上述配置在重启后会失效。你可以将配置写入网络配置文件中。 ### Ubuntu 20.04+(使用 `netplan`) ```yaml network: version: 2 renderer: networkd bridges: ovsbr0: addresses: - 192.168.1.100/24 gateway4: 192.168.1.1 nameservers: addresses: - 8.8.8.8 ovs_ports: [eth0] ovs_extra: [] ``` 然后应用配置: ```bash sudo netplan apply ``` --- ### CentOS/RHEL(使用 `network-scripts`) 编辑 `/etc/sysconfig/network-scripts/ifcfg-ovsbr0`: ```bash DEVICE=ovsbr0 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ``` 编辑 `/etc/sysconfig/network-scripts/ifcfg-eth0`: ```bash DEVICE=eth0 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSPort OVS_BRIDGE=ovsbr0 BOOTPROTO=none ``` 然后重启网络服务: ```bash sudo systemctl restart NetworkManager # 或使用传统方式 sudo systemctl restart network ``` --- ## ✅ 总结 - 使用 `ovs-vsctl` 创建网桥并将物理网卡加入其中; - 将物理网卡的 IP 地址配置OVS 网桥; - 可通过 `ip` 命令临时配置,也可通过配置文件实现持久化; - 注意重启后配置是否保留,需根据系统进行相应配置。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值