学习Linux——网络——网卡
《网卡》2025年11月4日
网卡是计算机与网络通信的 “硬件接口”,相当于设备的 “网络大门”—— 负责将计算机的数据转换成网络信号发送出去,同时接收外部网络信号并转换为计算机可识别的数据。以下从核心概念、分类、核心配置及实操管理四个维度讲解:
一、核心概念:网卡的作用与本质
- 本质:网卡全称 “网络适配器”,分为物理硬件(实体接口)和虚拟接口(软件模拟),是计算机接入网络的必需组件。
- 核心作用:实现计算机与网络(局域网 / 互联网)的信号转换和数据收发,没有网卡无法进行网络通信。
- 通信逻辑:网卡绑定 IP 地址后,成为设备在网络中的 “身份标识”,所有进出设备的网络数据包都通过网卡传输。
二、网卡的命名规则:
Linux对网卡的命名逻辑是为了稳定识别硬件,避免重启后设备名变化,常见规则:
ensXXX;en代表以太网(Ethernet),s代表PCI-E插槽(Slot),XXX是插槽编号
ethX:传统命名(x 为数字,如eth0是第一块以太网设备)已逐渐被上类取代
三、网卡的分类(按类型划分)
1. 物理网卡(实体硬件)
- 直接插在主板或扩展槽上的实体设备,用于连接物理网络(网线、光纤、无线信号)。
- 常见示例:
- 以太网网卡(有线):如
ens160(红帽系命名)、eth0(传统命名),通过网线连接路由器 / 交换机。 - 无线网卡:支持 Wi-Fi 连接,命名通常为
wlan0,常见于笔记本或台式机。
- 以太网网卡(有线):如
2. 虚拟网卡(软件模拟)
由操作系统或软件(如 Docker、虚拟机)创建的逻辑接口,无实体硬件,用于特定场景的内部通信。
常见示例:
- 回环网卡(lo): 用于本机内部通信(如程序自测,本地服务访问),IP 固定为
127.0.0.1(IPv4)/::1(IPv6) - Docker 网桥(docker0):Docker 自动创建的虚拟网桥,用于容器间、容器与主机通信,默认开启 Docker 就存在
- 桥接接口(如 br0): 模拟物理交换机,用于虚拟机桥接通信(如 KVM 虚拟机和主机同网段),手动创建使用
- TUN/TAP 设备:VPN 核心依赖(如 OpenVPN),TUN 传 IP 数据包、TAP 传以太网帧,实现加密流量转发
- VETH Pair(如 veth0/veth1): 一对 “虚拟网线”,用于容器间、网络命名空间间通信,Docker 容器网络常用
四、Linux 中网卡的核心配置
网卡需配置关键参数才能正常通信,核心配置项如下:
- IP 地址:网卡的网络身份(如
192.168.1.100),分为静态 IP(手动配置,固定不变)和动态 IP(DHCP 自动获取)。 - 子网掩码:区分 IP 的网络段和主机段(如
255.255.255.0,对应/24子网)。 - 网关:数据包离开本地网络的 “出口”(通常是路由器 IP,如
192.168.1.1),无网关无法访问外网。 - DNS:解析域名的服务器(如
223.5.5.5),确保能通过域名(如www.baidu.com)访问网络。
抽象理解:网卡是设备链接其他设备的大门,大门就需要门牌号(IP)否则别人找不到你,出门以后就是你所在的小区(子网),小区的范围(子网掩码)内都是你的邻居,当你需要出小区去其他地方找人时,就需要出小区大门(网关),当你不知道路的时候百度地图就排上用场(DNS域名解析)了。
五、Linux 中网卡的核心管理操作
1. 查看网卡信息(最常用,排查网卡状态)
- 命令 1:
ip addr(查看所有网卡的 IP、状态、MAC 地址等详细信息)- 状态解读:
UP表示网卡已启用,DOWN表示网卡已禁用。
- 状态解读:
- 命令 2:
nmcli device status(查看网卡设备状态及绑定的网络连接) - 示例输出解读:
ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> ... inet 192.168.1.100/24→ens160网卡已启用,绑定 IP192.168.1.100。
2. 启用 / 禁用网卡(临时操作)
- 启用网卡:
sudo nmcli connection up 连接名(如nmcli connection up ens160) - 禁用网卡:
sudo nmcli connection down 连接名(禁用后无法通过该网卡通信,远程连接会断开)
3. 配置网卡参数(永久生效)
-
方式 1:
nmcli命令配置(推荐,适用于新系统)# 给ens160配置静态IP、网关、DNS sudo nmcli connection modify ens160 ipv4.addresses "192.168.1.100/24" \ipv4.gateway "192.168.1.1" \ipv4.dns "223.5.5.5" \ipv4.method manual sudo nmcli connection up ens160 # 生效配置 -
方式 2:编辑配置文件(传统方式,适用于老系统)编辑物理网卡配置文件:
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens160,添加 / 修改参数后重启网络服务。
更多可参考《学习Linux——网络基础管理》
六、常见问题与注意事项
- 网卡显示 DOWN 状态:执行
nmcli connection up 连接名启用;若仍无效,检查物理网线是否插好或无线信号是否正常。 - 网卡无 IP 地址:若为动态 IP,检查 DHCP 服务器是否正常;若为静态 IP,确认配置文件中
IPADDR、NETMASK参数是否正确。 - 远程操作禁用网卡:若通过 XShell 等远程工具操作,禁用当前连接的网卡(如
ens160)会导致连接断开,需通过控制台恢复。 - 虚拟网卡无法通信:如 Docker 容器无法联网,检查
docker0网桥状态(ip addr show docker0)及路由规则(ip route show)。
七、总结
网卡是计算机接入网络的 “核心接口”,分为物理网卡(连接外部网络)和虚拟网卡(满足内部通信场景)。掌握网卡的查看、启用、配置等操作,是解决网络连通性问题和搭建网络服务的基础。
