首页 > 系统相关 >在Linux 中,如何配置网桥?如何配置虚拟网络?

在Linux 中,如何配置网桥?如何配置虚拟网络?

时间:2024-03-20 18:29:05浏览次数:20  
标签:systemd sudo network 配置 f1br1 etc 网桥 Linux

本章主要学习的是linux中如何设置网桥和虚拟网络的配置

一、网桥的配置

在Linux系统中配置一个新的网桥主要涉及以下几个步骤

  1. yum仓库做准备,安装组件epel-release
sudo yum -y install epel-release
  1. yum仓库中安装bridge-utils
 cd /etc/yum.repos.d/
 sudo yum -y install bridge-utils
  1. 查看网桥信息
 brctl show

如图:
在这里插入图片描述
4. 创建网桥

brctl addbr f1br1

其中f1br1是网桥名,可自己定义

  1. 启用或配置

编辑网桥的配置文件,在/etc/sysconfig/network-scripts/目录下创建一个类似于ifcfg-f1br1的文件,如果你使用的是Systemd-networkd,则是在/etc/systemd/network/目录下创建对应的netdevetwork单元文件

System V初始化脚本风格

echo -e "DEVICE=f1br1\nBOOTPROTO=dhcp\nONBOOT=yes" | sudo tee /etc/sysconfig/network-scripts/ifcfg-f1br1

或者静态配置IP地址

echo -e "DEVICE=f1br1\nIPADDR=192.168.1.10\nNETMASK=255.255.255.0\nGATEWAY=192.168.1.1\nDNS1=8.8.8.8\nONBOOT=yes" | sudo tee /etc/sysconfig/network-scripts/ifcfg-f1br1
  1. 创建/etc/systemd/network/10-f1br1.netdev

这里我使用的echo -e 命令,也可以使用vim编辑器编辑10-f1br1.netdev的内容,

mkdir /etc/systemd/network/10-f1br1.netdev -p
 echo -e "[NetDev]\nName=f1br1\nKind=bridge" | sudo tee /etc/systemd/network/10-f1br1.netdev

文件10-f1br1.netdev的内容为:

[NetDev]
Name=br0
Kind=bridge

在这里插入图片描述

  1. 接着创建/etc/systemd/network/20-br0.network文件
mkdir /etc/systemd/network/20-f1br1.network -p
echo -e "[Match]\nName=f1br1\n[Network]\nDhcp=yes"| tee /etc/systemd/network/20-f1br1.network

文件20-br0.network的内容为:

[Match]
Name=br0
[Network]
DHCP=yes # 如果使用DHCP动态获取IP

#或者配置静态IP
Address=192.168.1.10/24
Gateway=192.168.1.1
DNS=8.8.8.8

[Route]
如有必要,可在此添加默认路由或其他路由信息

在这里插入图片描述

  1. 查看网卡配置信息并且将物理网卡加入网桥

查看物理网卡

ip addr show

如:
在这里插入图片描述

添加至网桥

 brctl addif f1br1 ens160
  1. 重启服务
 systemctl restart network-online.target 
 systemctl restart systemd-network-generator.service 
  1. 检查是否配置成功
 ip link show f1br1

如:
在这里插入图片描述


二、虚拟网络的创建

在Linux中,使用KVM和libvirt管理虚拟机的情况下,定义一个新的虚拟网络通常涉及到创建一个XML配置文件,然后使用virsh命令行工具来定义和管理网络。

  1. 创建XML配置文件

创建一个XML文件,例如 f1br1.xml,并编写虚拟网络的配置。
以下是一个基本的内部网络(私有网络)的示例配置:

<network>
  <name>f1br1</name>
  <uuid>YOUR_NETWORK_UUID</uuid>
  <forward mode='nat'>
    <nat>
      <port start='1024' end='65535'/>
    </nat>
  </forward>
  <bridge name='f1br11' stp='on' delay='0'/>
  <ip address='192.168.122.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.122.2' end='192.168.122.254'/>
    </dhcp>
  </ip>
</network>

创建了一个带有NAT转发模式的网络,网络桥名为virbr1,并设置了DHCP服务分配的IP地址范围。

  1. 定义虚拟网络

使用virsh net-define命令加载配置文件来定义网络:

sudo virsh net-define f1br1.xml
  1. 启动虚拟网络
sudo virsh net-start f1br1.xml
  1. 设置网络开机自启动
sudo virsh net-autostart f1br1
  1. 查看虚拟网络状态
virsh net-list 

这篇文章中,可能会在实际有些小差错,有哪些不好的地方,欢迎来评论区告知!
谢谢大家的观看❤️❤️

标签:systemd,sudo,network,配置,f1br1,etc,网桥,Linux
From: https://blog.csdn.net/weixin_74994771/article/details/136883760

相关文章

  • linux: nohup & 重定向
    linux:nohup&重定向背景今天在进行一些spark-hive​的操作时,因为对此完全不了解,所以找好兄弟咨询了下,他给了我一串我完全看不懂的shell命令,本文就是专门用来解释这个命令的问题​nohup​以及>​代码这段神奇的代码:nohupspark-hive-fxx.sql>xx.log2>&1......
  • linux系统kubernetes的资源对象secret
    资源对象-secretSecret实现场景解释內建的Secrets创建自己的Secretsecret使用使用Secret加密流程创建secret加密数据挂载到pod容器以变量形式挂载以Volume数据卷形式挂载案例Secret实现作用:加密数据,存储在etcd中,让pod容器,以挂载Volume方式进行访问场景凭证......
  • linux系统kubernetes容器检查和恢复机制
    容器检查和恢复机制容器检查和恢复机制命令模式探针httpget方式探针POD的恢复策略容器检查和恢复机制在kubernetes中,可以为容器定义一个健康探针,kubelet就会根据这个Probe的返回值决定这个容器的状态,而不是直接以容器是否运行(来自Docker返回的信息)作为依据......
  • 【Prometheus】联邦集群配置demo
    点击查看代码#myglobalconfigglobal:scrape_interval:15s#Setthescrapeintervaltoevery15seconds.Defaultisevery1minute.evaluation_interval:15s#Evaluaterulesevery15seconds.Thedefaultisevery1minute.#scrape_timeoutissetto......
  • Go环境变量配置,及GOROOT、GOPATH的区别
    一、安装Gogo下载地址:https://golang.google.cn/dl/windows下载安装,有两种方式。解压和直接安装方式一:直接下载安装包。以.msi结尾的文件。例如:go1.22.1.windows-amd64.msi 下载后,双击后一直点下一步即可安装成功。方式二:下载压缩包文件,直接解压。解压后配置环境变量......
  • 目录配置依据
    一、目录配置依据依据FHS依据文件系统使用的频繁与否与是否允许使用者随意更动,而将目录定义成为四种交互作用的形态,用表格来说有点像下面这样:可分享的(shareable)不可分享的(unshareable)不变的(static)/usr(软件放置处)/etc(配置文件)/opt(第三方协力软件)/boot(开......
  • redis的配置启动
    centos上安装redis#Redis是什么1C语言开源,非关系型数据库:早起版本2w3千行2基于键值对的存储系统:字典形式3多种数据结构:字符串,hash,列表,集合,有序集合4高性能(并发量高),功能丰富(不仅仅做缓存,还能做别的)#那些公司在用github,twitter,stackoverflow,阿里,百度,微博,美团,搜狐......
  • Linux进程控制
    1.进程创建fork函数#include<unistd.h>pid_tfork(void);返回值:自进程中返回0,父进程返回子进程id,出错返回-1进程调用fork,当控制转移到内核中的fork代码后,内核做:1.分配新的内存块和内核数据结构给子进程2.将父进程部分数据结构内容拷贝至子......
  • 1、戴尔R630本地服务器搭建Linux系统软件硬件环境配置
    目录1.1、服务器配置1.1.1、选择服务器配置方案1.1.2、服务器硬件配置1.1.3、服务器配置检测1.2、网络配置1.2.1、外网配置1.2.2、内网配置1.3、Linux系统Centos镜像下载......
  • linux 中shell脚本中遇到 Runtime error (func=(main), adr=22): Divide by zero
    在Linux中编写Shell脚本时,遇到“Runtimeerror(func=(main),adr=22):Dividebyzero”这样的错误通常是因为在脚本中进行了除以零的操作,类似于编程语言中的除零错误。要解决这个问题,您需要检查Shell脚本中涉及到除法运算的地方,确保分母不为零。下面是一个示例S......