位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享在Linux系统下使用TUN/TAP虚拟网卡的基本教程(linux用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:在linux系统中,在linux系统中,用来存放系统所需要的配置文件和子目录,使用linux,在linux系统中,使用linux,在linux系统中,在linux操作系统中,/etc/rc.d/init.d,在linux操作系统中,/etc/rc.d/init.d,内容如对您有帮助,希望把文章链接给更多的朋友!

在计算机网络中,TUN与TAP是操作系统内核中的虚拟网络设备。不同于普通靠硬件网路板卡实现的设备,这些虚拟的网络设备全部用软件实现,并向运行于操作系统上的软件提供与硬件的网络设备完全相同的功能。TAP 等同于一个以太网设备,它操作第二层数据包如以太网数据帧。TUN模拟了网络层设备,操作第三层数据包比如IP数据封包。操作系统通过TUN/TAP设备向绑定该设备的用户空间的程序发送数据,反之,用户空间的程序也可以像操作硬件网络设备那样,通过TUN/TAP设备发送数据。在后种情况下,TUN/TAP设备向操作系统的网络栈投递(或“注入”)数据包,从而模拟从外部接受数据的过程。服务器如果拥有TUN/TAP模块,就可以开启VPN代理功能。虚拟网卡TUN/TAP 驱动程序设计原理:

tun/tap 驱动程序实现了虚拟网卡的功能,tun表示虚拟的是点对点设备,tap表示虚拟的是以太网设备,这两种设备针对网络包实施不同的封装。利用tun/tap 驱动,可以将tcp/ip协议栈处理好的网络分包传给任何一个使用tun/tap驱动的进程,由进程重新处理后再发到物理链路中。开源项目openvpn ( 下面我们就以fedora 来举例,来看看如何创建虚拟网卡设备

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

1. 确认内核是否支持tun/tap确认内核是否有tun模块复制代码代码如下: [root@hunterfu]# modinfo tun filename: /lib/modules/2.6..7-.fc.i.PAE/kernel/drivers/net/tun.ko alias: char-major-- license: GPL author: (C) - Max Krasnyansky <maxk@qualcomm.com> description: Universal TUN/TAP device driver srcversion: DEFEDB depends: vermagic: 2.6..7-.fc.i.PAE SMP mod_unload 加载内核模块 -复制代码代码如下: [root@hunterfu ~]# modprobe tun [root@hunterfu ~]# lsmod | grep tun tun 1 执行以上命令后,出现如上输出,说明模块加载成功

2. 创建和配置虚拟网卡确认是否有tunctl命令,如果没有通过yum安装即可复制代码代码如下: [root@hunterfu ~]# yum install tunctl创建虚拟网卡设备复制代码代码如下: [root@hunterfu ~]# tunctl -t tap0 -u root设置虚拟网卡复制代码代码如下: [root@hunterfu ~]# ifconfig tap0 ..0.1 netmask ...0 promisc经过如上操作后,虚拟网卡已经建立和配置好了。

3. 作为系统服务随系统自动启动创建虚拟网卡编写配置脚本(符合chkconfig规范)复制代码代码如下: [root@hunterfu ~]# cat /etc/init.d/config_tap #!/bin/bash # # config_tap Start up the tun/tap virtual nic # # chkconfig: USER="root" TAP_NETWORK="..0.1" TAP_DEV_NUM=0 DESC="TAP config" do_start() { if [ ! -x /usr/sbin/tunctl ]; then echo "/usr/sbin/tunctl was NOT found!" exit 1 fi tunctl -t tap$TAP_DEV_NUM -u root ifconfig tap$TAP_DEV_NUM ${TAP_NETWORK} netmask ...0 promisc ifconfig tap$TAP_DEV_NUM } do_stop() { ifconfig tap$TAP_DEV_NUM down } do_restart() { do_stop do_start } check_status() { ifconfig tap$TAP_DEV_NUM } case $1 in start) do_start;; stop) do_stop;; restart) do_restart;; status) echo "Status of $DESC: " check_status exit "$?" ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 1 esac可以根据具体需求修改此脚本加入到系统服务中复制代码代码如下: [root@hunterfu ~]# chkconfig --add config_tap [root@hunterfu ~]# chkconfig --level config_tap on操作完成后,就可以像其他标准服务一样,通过 service config_tap start 来进行创建和启动操作

配置iptables实现本地端口转发的方法详解 场景假如你在用resin调试一个Web程序,需要频繁地重启resin。这个Web程序需要开在端口上,而Linux限制以下的端口必须有root权限才能开启。但是你又

Linux系统下安装配置postfix邮件服务器的教程 一,安装postfix,cyrus-sasl,cyrus-imapd如果yum提示找不到软件包,请换一下源,请参考centos6推荐使用epel源复制代码代码如下:[root@localhost~]#yuminstallpostfix[root

连接Linux的服务器时使用SSH密钥认证及解决自动断连问题 A机器(ssh连接发起端,即客户端):添加一个测试用户aaa复制代码代码如下:[root@A~]#useraddaaasu成aaa复制代码代码如下:[root@A~]#su-aaa[aaa@A~]$ssh-keygen创建rsa

标签: linux用

本文链接地址:https://www.jiuchutong.com/biancheng/353381.html 转载请保留说明!

上一篇:Linux系统上PPTP协议VPN服务器架设方法(linux pptp客户端)

下一篇:配置iptables实现本地端口转发的方法详解(iptables配置文件详解)

  • 税控盘服务费全额抵扣分录
  • 商业写字楼
  • 企业所得税是什么意思
  • 增值税专用发票抵扣期限
  • 应交税费为什么记借方
  • 税控盘当月不抵扣怎么申报
  • 增值税纳税申报表怎么填
  • 生产成本里面的工资
  • 员工上班期间应穿
  • 业务分成方案
  • 前程无忧靠什么赚钱
  • 农产品收购发票上的买价含税吗
  • 销售支付运费属什么科目
  • 事业单位没有税号 选个人可以吗
  • 每月物业费怎么计算公式
  • 专票小数点后两位没有显示出来可以认证吗
  • 资金筹集业务的账务处理重点笔记
  • 收到对方公司的货款怎么记账
  • 营业外收入政府补贴要交税吗
  • 个人汇算清缴已经做了公司怎么改申报
  • 三星笔记app功能介绍
  • linux命令-a
  • 应纳税所得额怎么理解
  • 委托加工物资企业收回自用
  • asldrsrv.exe
  • 车辆购买保险发票未回怎么做会计分录
  • php执行linux脚本
  • 接受捐赠和对外捐赠分录
  • 供热企业享受增值税吗
  • 零申报的账怎么做
  • php收发邮件
  • php求日期差
  • 企业预缴所得税怎么算
  • js怎么制作
  • 废品损失科目的账户结构
  • 非限定性资产和业务活动表关系
  • python如何运行
  • 账上没有实收资本
  • python模块的扩展名
  • 企业税收风险因素分析
  • 零售行业bi
  • 材料暂估成本的账务处理
  • 出口退税单机版是什么意思
  • 增值税纳税申报表在哪里查询
  • 加工费计入什么科目制造企业成本
  • 什么叫日常业务
  • 收到营业外收入政府补贴的会计分录
  • 制造费用明细科目大全表
  • 什么是建筑服务的甲供工程
  • 实际发的工资跟个人所得税不一样怎么办
  • 调整其他应付款作为收入
  • 准予抵扣销项税额
  • 未取得增值税发票措施有哪些
  • 营业执照可以变更名字和经营范围吗
  • sql server 修改
  • mysql必知必会 pdf完整版
  • sqlserver 查询锁
  • sqlserver存储过程在哪
  • macos dock栏
  • ubuntu设置在哪里
  • kdeskcore.exe是什么
  • ksysslim.exe是什么
  • win7如何录制电脑屏幕
  • win7游戏打开没反应
  • Win10 Build 14267截图欣赏:贴心功能大展示
  • 垂直翻转画布
  • cocos2dx3d2d结合
  • cocos2dx怎么打开
  • c# opengl 3d
  • js 判断一个数字是否相等
  • 一个简单的灵魂
  • JS+CSS实现仿雅虎另类滑动门切换效果
  • HttpURLConnection的流式输出的缺陷和解决方法
  • jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
  • python中的set方法
  • iterator python
  • 纳税申报表如何看销售额
  • 什么是委托代征专用账户管理
  • 全电发票
  • 鲨鱼记账咋记账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设