linux上使用tun/tap设备模拟一个虚拟网卡,并将该虚拟网卡连接到新创建的网桥上

这篇具有很好参考价值的文章主要介绍了linux上使用tun/tap设备模拟一个虚拟网卡,并将该虚拟网卡连接到新创建的网桥上。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

linux上使用tun/tap设备模拟一个虚拟网卡,并将该虚拟网卡连接到新创建的网桥上

一、tun/tap设备简介

tun/tap 设备是操作系统内核中的虚拟网络设备,是用软件模拟的网络设备,提供与硬件网络设备完全相同的功能。主要用于用户空间和内核空间传递报文。

tun/tap 设备与物理网卡的区别:

  1. 对于硬件网络设备而言,一端连接的是物理网络,一端连接的是网络协议栈。
  2. 对于 tun/tap 设备而言,一端连接的是应用程序(通过 字符设备文件 /net/dev/tun),一端连接的是网络协议栈。

二、在linux上使用tun/tap设备模拟一个虚拟网卡

  1. 确认内核是否支持tun/tap

    确认内核是否有tun模块

    modinfo tun
    

    出现如下提示,表示有tun模块

    linux tun安装,linux,运维,服务器

    加载tun模块

    modprobe tun
    
  2. 创建和配置虚拟网卡

    先安装tunctl,该工具可以通过安装软件包uml-utilities来获得,我的环境ubuntu,具体命令如下:

    apt install uml-utilities
    # 如果安装的时候找不到安装包,就使用如下命令更新软件列表信息
    apt upgrade
    

    创建虚拟网卡设备,命名为tap0

    tunctl -t tap0 -u root
    

    设置虚拟网卡,并配置ip地址和子网掩码等信息

    ifconfig tap0 192.168.0.1 netmask 255.255.255.0 promisc
    

三、 创建网桥连接到虚拟网卡上

# 创建一个名为br1的网桥
ip link add br1 type bridge

# 将tap0网卡设备加进来
ip tuntap add dev tap0 mode tap

# 将br1设置为tap0的目标网桥
ip link set dev tap0 master br1

# 启动网桥
ip link set dev br0 up

都搞定以后,查看网桥状态,需要安装brctl,该工具可以通过安装软件包bridge-utils来获得,具体命令如下:

apt install bridge-utils

安装好以后,用brctl show命令来查看网桥状态

四、参考资料:

Linux下添加虚拟网卡

在Linux系统下使用TUN/TAP虚拟网卡的基本教程

Linux 虚拟网卡技术:Macvlan

qemu网桥配置文章来源地址https://www.toymoban.com/news/detail-644913.html

到了这里,关于linux上使用tun/tap设备模拟一个虚拟网卡,并将该虚拟网卡连接到新创建的网桥上的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux设备驱动开发(一) 使用Qemu模拟ARM vexpress-a9开发板

    环境:ubuntu20.04 LTS 参考教材:《Linux设备驱动开发详解——基于最新的Linux4.0内核,宋宝华编著》 1.安装Qemu 安装完成后,在终端输入qemu连按tab键如果出现自动补齐就证明成功安装,如下图所示: 图1 Qemu安装成功示意图 2.安装交叉编译环境 下面验证安装: 图2 交叉编译工具安装

    2024年04月09日
    浏览(36)
  • Linux虚拟机网卡配置(创建静态ip)

    登录后先通过命令“ip addr”查看ip,发现没有ip地址。 通过命令“dhclient”创建随机ip。 再次使用“ip addr”命令查看ip,记住此时的随机ip,之后通过设置将其设置成静态ip。 进入到网卡目录下并查看目录。 如果害怕自己操作出现错误,可以通过下面的命令提前备份网卡,如

    2024年02月05日
    浏览(35)
  • Android Studio模拟器/虚拟设备连接互联网的方法

    如图,无线、网络都无法联网 找到本机的DNS 找到emu-launch-params.txt,添加DNS 重启虚拟机,关闭无线

    2024年02月04日
    浏览(32)
  • VMware虚拟机Linux系统配置网卡IP地址

    系统是CentOS7,在配置时出现了问题,搜索了一些解决办法,结合自己的机器实操,进行了总结。如下: 所有虚拟机都是使用10.0.0.xx这个网段。这是下面的视频讲的,但我发现我的虚拟机并不是这样。我用的编辑方法与视频也并不完全相同。 视频介绍配置网卡:解决 vmware 中

    2024年02月09日
    浏览(41)
  • 使用Git在本地创建一个仓库并将其推送到GitHub

     前记: git svn sourcetree gitee github gitlab gitblit gitbucket gitolite gogs 版本控制 | 仓库管理 ---- 系列工程笔记. Platform:Windows 10 Git version:git version 2.32.0.windows.1 Function: 使用Git在本地创建一个仓库并将其推送到GitHub 目录 一. 在本地创建一个GitHub仓库并将其推送到GitHub的步骤如下:

    2024年02月07日
    浏览(38)
  • Linux系统中判断多个设备使用了同一个IP地址,判断IP地址冲突的问题

    在Linux系统中,如果多个设备使用了同一个IP地址,就会发生IP地址冲突的问题。IP地址冲突会导致网络连接不稳定,甚至会导致网络中断。因此,在使用Linux系统时,需要及时发现和解决IP地址冲突问题。 下面介绍几种在Linux系统中判断IP地址冲突的方法。 1.使用ping命令 ping命

    2024年02月16日
    浏览(44)
  • vmware虚拟机 linux 本地yum源,网卡配置ens33,防火墙selinux

    1、挂载镜像文件,CentOS-7-x86_64-DVD-1804.iso,并且要处于连接状态 #光盘挂载至/mnt mount /dev/sr0 /mnt #备份yum源文件 cd /etc/yum.repos.d/ mkdir -p ./bak mv CentOS* ./bak #编缉本地源 vim local.repo [centos7] name=CentOS7 baseurl=file:///mnt enable=1 gpgcheck=0   关闭防火墙并设置开机不启动 firewall 服务开启与关闭

    2024年02月04日
    浏览(39)
  • android studio虚拟机中一个程序模拟udp通信

    分别在两个方法中创建两个线程,一个作为服务器进行监听,一个作为客户端进行数据发送。

    2024年02月07日
    浏览(23)
  • linux|操作系统|centos7物理机安装网卡驱动8188gu(内核升级,firmware固件,USB设备管理,module管理)

    目前服务器领域centos7基本是主流的操作系统,而linux相对于Windows来说,软硬件方面的支持是差很多的,在硬件方面来说,以一个免驱的网卡为例,window xp可能不会自动识别到,但Windows10基本都会自动识别到,简简单单的即插即用。根本原因在Windows随着版本的升级,内置的各

    2024年01月20日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包