详解物理机OpenStack连接外部网络网卡配置管理(适用虚拟机)

目录

背景与环境描述

特殊注意事项

Centos7

单网卡场景

多网卡场景

Ubuntu

单网卡场景

多网卡场景

背景与环境描述

        本文将从设计和配置两方面详细说明在Centos和Ubuntu两种场景下,allinone部署的OpenStack想要实例能够正常连接外部网络,在网卡上需要做的配置。

        在安装完OpenStack后,通过ip add show可以看到有几下几张网卡:1.物理网卡 2.br-ex 3.br-int 4.br-tun。详细的OpenStack网络结构可以参考

OpenStack网络详解-CSDN博客

        下文中假设物理网卡名称为eth0,eth1(在虚拟环境中网卡名可能是ens33,ens36),连接公网的统一的思路都是将外部网口设置成二层接口,使用br-ex来获取ip地址或者使用静态ip地址。

        在设计中,在分离部署情况下,两网卡是将业务流量、管理流量走其中一个网卡,存储流量走另一个网卡。不过我们这是融合部署,两网卡就是业务流量和管理流量分离:设置业务流量的网卡eth0为external网卡,管理流量的网卡eth1为internal网卡。

特殊注意事项

        多网卡场景要求网卡之间网段不相同。如果相同,外部网卡绑定的br-ex获取ip后,内部网卡将无法使用。这种情况下不如直接将内外部网卡设置为同一个。
        如果已经采取了这样的配置也没事,反正你都能访问的。但此时外部网卡不能断开连接,一旦断开连接,由于外部网卡的原因,内部网卡也将无法访问网关,擦除br-ex的ip之后恢复。

Centos7

单网卡场景

        不使用网络连接进行管理的场景,比如VMware,在进行安装时指定eth0同时为internal网卡和external网卡。

        此时eth0无ip地址,需要关闭NetworkManager,使用service Network的方式来管理网卡

#在/etc/sysconfig/network-scripts中添加网卡配置文件

#添加eth0的配置文件
cat > /etc/sysconfig/network-scripts/ifcfg-eth0 <<END
TYPE=OVSPort
HWADDR=xx:xx:xx:xx:xx:xx
ONBOOT=yes
DEVICE=eth0
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
END

#添加br-ex的配置文件————采用DHCP
cat > /etc/sysconfig/network-scripts/ifcfg-br-ex <<END
TYPE=OVSBridge
NAME="br-ex"
DEVICE=br-ex
DEVICETYPE=ovs
BOOTPROTO=dhcp
DEFROUTE=yes
ONBOOT=yes
DELAY=0
END

#添加br-ex的配置文件————采用静态地址
cat > /etc/sysconfig/network-scripts/ifcfg-br-ex <<END
TYPE=OVSBridge
NAME="br-ex"
DEVICE=br-ex
DEVICETYPE=ovs
BOOTPROTO=static
IPADDR=<静态IP地址>
NETMASK=<子网掩码>
GATEWAY=<网关IP地址>
DNS1=<首选DNS服务器IP地址>
DNS2=<备用DNS服务器IP地址>
DEFROUTE=yes
ONBOOT=yes
DELAY=0
END

#应用设置——重启服务
systemctl disable NetworkManager --now
systemctl enable  network --now
systemctl restart network

多网卡场景

这是博主现在遇到的场景,博主使用的物理机有无线网卡和有线网卡各一块:
无线网卡打通隧道用以远程管理,所以无法使用单网卡场景
有线网卡作为外部网卡连接公网(刚安装完是个二层口),对端是路由器用的dhcp

大多配置与单网卡相同,但需要额外配置eth1的网卡:

#在/etc/sysconfig/network-scripts中添加网卡配置文件

#静态ip地址
cat > /etc/sysconfig/network-scripts/ifcfg-eth1 <<END
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=<静态IP地址>
NETMASK=<子网掩码>
GATEWAY=<网关IP地址>
DNS1=<首选DNS服务器IP地址>
DNS2=<备用DNS服务器IP地址>
END

#无线,dhcp获取地址
cat > /etc/sysconfig/network-scripts/ifcfg-eth1 <<END
TYPE=Wireless
BOOTPROTO=dhcp
DEFROUTE=yes
NAME=eth1
DEVICE=eth1
ONBOOT=yes
END

#重启服务
systemctl restart network

Ubuntu22.04

单网卡场景

        不使用网络连接进行管理的场景,比如VMware

        从Ubuntu 18.04开始,默认网络管理工具已切换为NetPlan,它使用YAML格式的配置文件(/etc/netplan/*.yaml)来定义网络接口和配置。配置文件可以包括静态IP地址、DHCP、路由、DNS服务器等网络参数。

        修改netplan网络配置文件

#修改/etc/netplan/网络配置文件
#vim /etc/netplan/01-network-manager-all.yaml 这个是我的

#动态获取ip
cat /etc/netplan/01-network-manager-all.yaml
network:
  version: 2
  renderer: networkd  #网络渲染器
  ethernets:
    eth0:
      dhcp4: true
  bridges:
    br-ex:
      interfaces: [eth0]  # 将外部网卡接口绑定到网桥
      dhcp4: true          # 启用网桥的 DHCPv4


#静态指定ip
cat /etc/netplan/01-network-manager-all.yaml

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
  bridges:
    br-ex:
      interfaces: [eth0]
      addresses: [x.x.x.x/xx]
      gateway4: x.x.x.x
      nameservers:         #dns地址
        addresses: [8.8.8.8]

#重启服务
netplan apply
systemctl disable NetworkManager --now
systemctl enable systemd-networkd --now

多网卡场景

这是博主现在遇到的场景,博主使用的物理机有无线网卡和有线网卡各一块:
无线网卡打通隧道用以远程管理,所以无法使用单网卡场景
有线网卡作为外部网卡连接公网(刚安装完是个二层口),对端是路由器用的dhcp

无线网卡用Networkmanager做管理
#不关闭NetworkManager
#就算调整了配置文件将无线网卡纳管到netplan,关闭了NetworkManager之后无线网卡也会嘎掉

cat /etc/netplan/01-network-manager-all.yaml

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: true                # 启用有线网卡的 DHCPv4
  bridges:
    br-ex:                       # 定义网桥名称
      interfaces: [eth0]         # 将外部有线网卡接口绑定到网桥
      dhcp4: true                # 启用网桥的 DHCPv4

相关推荐

  1. OpenEuler虚拟配置网络连接

    2023-12-17 19:12:05       19 阅读
  2. 虚拟部署openeuler网络配置

    2023-12-17 19:12:05       17 阅读
  3. 虚拟 网络模式

    2023-12-17 19:12:05       28 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-17 19:12:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-17 19:12:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-17 19:12:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-17 19:12:05       20 阅读

热门阅读

  1. PAT乙级1017 A除以B

    2023-12-17 19:12:05       41 阅读
  2. python310_d.lib导致无法解析的外部符号的异常

    2023-12-17 19:12:05       59 阅读
  3. weston 1: 编译与运行傻瓜教程(补充)

    2023-12-17 19:12:05       33 阅读
  4. 33.搜索旋转排序数组

    2023-12-17 19:12:05       41 阅读
  5. Linux常用命令大全(摘录整理)

    2023-12-17 19:12:05       33 阅读
  6. Spring Data JPA 提供的默认查询方法

    2023-12-17 19:12:05       34 阅读
  7. vscode

    vscode

    2023-12-17 19:12:05      37 阅读
  8. day 18二叉树(五)

    2023-12-17 19:12:05       35 阅读
  9. 《农业》特刊约稿

    2023-12-17 19:12:05       39 阅读
  10. 帆软BI目录

    2023-12-17 19:12:05       48 阅读