配置网卡子接口

1. 配置网卡子接口的好处

1.1. 优点

在 Linux 中,配置网卡子接口(也称为虚拟接口或 VLAN 接口)主要是为了实现网络的逻辑分段和隔离,每个子接口都有自己的 IP 地址和网络配置,可以在同一个物理网卡上创建多个独立的网络连接环境。这有以下几个主要好处:

  • 网络隔离:可以将不同的服务或部门的网络流量隔离开,防止不同服务之间的数据包混淆,提升网络安全。

  • VLAN划分:在企业网络中,VLAN(Virtual Local Area Network)常用于划分广播域,减少广播风暴,提高网络效率。

  • 服务区分:每个子接口可以分配给特定的服务,如 VoIP、视频会议、Web服务器等,确保服务质量。

  • 防火墙和路由策略:便于实施精细化的防火墙规则和路由策略,根据子接口进行流量控制。

  • 灵活性:子接口的创建和删除相对简单,可以根据业务需求动态调整网络配置。

  • 简化管理:在网络规模较大的情况下,可以集中管理物理网卡,而子接口的配置则更易于理解和维护。

1.2. 缺点

由于是多个子接口共用主接口,会让子接口性能比单个物理接口差,在网络流量过大,网络繁忙,会造成通信及网络流量瓶颈。

2. 如何配置子接口

2.1. 查看系统802.1q 模块信息

powershell 复制代码
[root@localhost ~]# modinfo 8021q
filename:       /lib/modules/3.10.0-1160.el7.x86_64/kernel/net/8021q/8021q.ko.xz
version:        1.8
license:        GPL
alias:          rtnl-link-vlan
retpoline:      Y
rhelversion:    7.9
srcversion:     1DD872AF3C7FF7FFD5B14D5
depends:        mrp,garp
intree:         Y
vermagic:       3.10.0-1160.el7.x86_64 SMP mod_unload modversions 
signer:         CentOS Linux kernel signing key
sig_key:        E1:FD:B0:E2:A7:E8:61:A1:D1:CA:80:A2:3D:CF:0D:BA:3A:A4:AD:F5
sig_hashalgo:   sha256

2.2. 加载802.1q 模块

复制代码
[root@localhost ~]# modprobe 8021q

2.3. 检查802.1q 模块加载状态

powershell 复制代码
[root@localhost ~]# lsmod | grep 8021q
8021q                  33080  0 
garp                   14384  1 8021q
mrp                    18542  1 8021q

2.4. 配置网卡子接口

2.4.1. 首先需要将网卡配置为静态地址

参考如下网卡配置

powershell 复制代码
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="1290a4d9-f57a-49fc-89d4-b6a5c9bb42c4"
DEVICE="ens33"
ONBOOT="yes"

IPADDR=192.168.92.10
NETMASK=255.255.255.0
GATEWAY=192.168.92.2
DNS1=192.168.92.2

2.4.2. 配置子网卡文件

复制代码
[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33:0
powershell 复制代码
TYPE=Ethernet
BOOTPROTO=none
IPADDR=192.168.2.1
NETMASK=255.255.255.0
DEVICE=ens33:0
ONBOOT=yes
ZONE=public

2.4.3. 重启网络查看子接口状态

复制代码
systemctl restart network
powershell 复制代码
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:57:ff:c5 brd ff:ff:ff:ff:ff:ff
    inet 192.168.92.10/24 brd 192.168.92.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.1/24 brd 192.168.1.255 scope global noprefixroute ens33:1
       valid_lft forever preferred_lft forever
    inet 192.168.2.1/24 brd 192.168.2.255 scope global noprefixroute ens33:0
       valid_lft forever preferred_lft forever
    inet6 fe80::199:d74c:2c3c:1cd/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
13: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether f2:67:5e:96:4e:c8 brd ff:ff:ff:ff:ff:ff
相关推荐
BingoGo1 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack1 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack2 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
Sinclair3 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
JaguarJack3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo3 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
Rockbean4 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
茶杯梦轩4 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
JaguarJack4 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel