最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Linux配置虚拟网卡的方法 CentOS与Ubuntu通用教程
时间:2026-07-07 09:34:51 编辑:袖梨 来源:一聚教程网
Linux单网卡多IP可通过临时(ip/ifconfig)或永久(配置文件)方式创建虚拟网卡:临时用ip addr add IP/dev eth0 label eth0:0或ifconfig eth0:1 IP netmask ... up,重启失效;永久需按发行版修改对应配置文件(如CentOS的ifcfg-eth0:0、Ubuntu的interfaces或Netplan),再重启网络服务;另支持tunctl或macvlan创建独立MAC的虚拟接口。
在单台Linux服务器上需要多个IP地址但又不想增加物理网卡时,必须配置虚拟网卡。这能支撑多站点绑定、服务隔离、容器网络底层或测试多子网环境,且不依赖额外硬件。
临时创建虚拟网卡(重启即失效)
方法一:使用ip命令(推荐,现代系统默认支持)
执行 sudo ip addr add 192.168.50.100/24 dev eth0 label eth0:0,其中eth0需替换为你的主网卡名,eth0:0是别名,可自定义为eth0:1等。
运行后立即生效,无需重启服务,ip addr show eth0 可验证新增地址已挂载。
方法二:兼容旧版的ifconfig方式
输入 sudo ifconfig eth0:1 192.168.50.101 netmask 255.255.255.0 up 即可启用。
⚠️注意:CentOS 7+ 默认不预装 net-tools,若提示 command not found,先运行 sudo yum install -y net-tools(CentOS)或 sudo apt install -y net-tools(Ubuntu)。
删除临时虚拟网卡只需反向操作:sudo ip addr del 192.168.50.100/24 dev eth0 或 sudo ifconfig eth0:1 down。
永久保存虚拟网卡配置(重启不丢失)
第一步:确认主网卡名称
运行 ip -br a | grep UP,找出处于UP状态的以太网接口名(如 ens33、enp0s3 或 eth0),【后续所有配置必须严格使用该名称】。
第二步:按发行版选择配置路径
● CentOS/RHEL 6–7:编辑 /etc/sysconfig/network-scripts/ifcfg-<em>主网卡名</em>:0,例如 ifcfg-ens33:0;
● Ubuntu 18.04及更早:编辑 /etc/network/interfaces,在末尾追加虚拟网卡段;
● Ubuntu 20.04+(Netplan):修改 /etc/netplan/*.yaml 中对应连接的配置块。
第三步:写入静态地址配置
CentOS示例(新建文件 /etc/sysconfig/network-scripts/ifcfg-ens33:0):DEVICE=ens33:0BOOTPROTO=staticONBOOT=yesIPADDR=192.168.50.100NETMASK=255.255.255.0
Ubuntu传统方式(追加到 /etc/network/interfaces):auto ens33:0iface ens33:0 inet staticaddress 192.168.50.100netmask 255.255.255.0
第四步:激活新配置
CentOS 7:执行 sudo systemctl restart network;
Ubuntu 18.04及更早:执行 sudo systemctl restart networking;
Ubuntu 20.04+:执行 sudo netplan apply。
创建带独立MAC地址的虚拟网卡(用于虚拟机/KVM桥接)
方法一:用tunctl创建TAP设备(需root权限)
先安装工具:sudo yum install -y tunctl(CentOS)或 sudo apt install -y uml-utilities(Ubuntu);
然后运行 sudo tunctl -t tap1 -u $(whoami) 创建名为 tap1 的用户级TAP接口;
启用它:sudo ip link set tap1 up;
此时 ip link show tap1 显示的MAC地址与物理网卡完全不同,可用于KVM直通或QEMU网络后端。
方法二:用macvlan创建二层隔离虚拟口(无需额外软件)
执行 sudo ip link add link ens33 macvlan0 type macvlan mode bridge,其中 ens33 替换为主网卡名;
赋予IP并启用:sudo ip addr add 192.168.50.200/24 dev macvlan0 && sudo ip link set macvlan0 up;
⚠️注意:【macvlan不能和宿主机在同一子网下通信,除非配置hairpin模式或交换机支持】,否则仅能与外部设备互通。
相关文章
- 高德地图路线规划显示异常怎么办 07-09
- 漫蛙漫画官方版正版ios如何安装 07-09
- 胖东来官网地址-胖东来官方网站入口地址 07-09
- investopedia官网中文版入口-investopedia国内能用的官方网页版入口地址 07-09
- 一点文学txt小说网站入口-一点文学小说官网入口地址2026最新 07-09
- 易校园怎么绑定微信 07-09