如何正确配置Linux网卡?

查看网卡信息

  1. 识别网卡名称

    ip link show   # 查看所有网络接口(状态为DOWN/UNKNOWN表示未激活)

    lshw -class network   # 查看硬件详情(需安装lshw)
    • 常见网卡名称:eth0(传统命名)、enp0s3(新版预测命名)。
  2. 检查驱动状态

    lspci -k | grep -A 3 -i "network"  # 确认网卡驱动是否加载

临时激活网卡(重启失效)

sudo ip link set dev <网卡名> up  # 激活网卡(如enp0s3)
sudo dhclient <网卡名>           # 自动获取IP(DHCP)
  • 验证:
    ip addr show <网卡名>  # 查看分配的IP

永久配置网卡(配置文件)

Ubuntu/Debian(使用Netplan)

  • 编辑YAML配置文件(路径可能不同):
    sudo nano /etc/netplan/01-netcfg.yaml
  • 示例配置(DHCP):
    network:
      version: 2
      ethernets:
        enp0s3:
          dhcp4: true
          optional: true
  • 应用配置:
    sudo netplan apply

CentOS/RHEL(使用NetworkManager)

  • 编辑配置文件:
    sudo nmtui  # 图形化工具(推荐)

    或手动修改:

    sudo nano /etc/sysconfig/network-scripts/ifcfg-<网卡名>
  • 关键参数:
    BOOTPROTO=dhcp    # 或 static(静态IP)
    ONBOOT=yes        # 开机自动激活
    IPADDR=192.168.1.10  # 静态IP需指定
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1

使用命令行工具

ip 命令(推荐)

sudo ip addr add 192.168.1.10/24 dev enp0s3  # 设置静态IP
sudo ip route add default via 192.168.1.1     # 设置默认网关

nmcli(NetworkManager客户端)

sudo nmcli con add type ethernet ifname enp0s3 con-name my_eth  # 创建连接
sudo nmcli con mod my_eth ipv4.method manual ipv4.addresses 192.168.1.10/24
sudo nmcli con up my_eth  # 激活连接

重启网络服务

  • Ubuntu (Netplan)
    sudo netplan apply
  • CentOS 7
    sudo systemctl restart network
  • CentOS 8+/RHEL
    sudo systemctl restart NetworkManager

故障排查

  1. 网卡未识别

    • 检查驱动:dmesg | grep <网卡名>
    • 加载驱动:sudo modprobe <驱动模块名>(如e1000)。
  2. IP冲突

    • 更换静态IP或释放DHCP租约:
      sudo dhclient -r <网卡名>  # 释放
      sudo dhclient <网卡名>     # 重新获取
  3. 防火墙拦截

    sudo ufw allow in on <网卡名>  # Ubuntu
    sudo firewall-cmd --zone=public --add-interface=<网卡名> --permanent  # CentOS

注意事项

  1. 权限要求:所有命令需sudo或root权限。
  2. 配置文件备份:修改前执行 cp <配置文件> <配置文件>.bak
  3. 发行版差异
    • Ubuntu 18.04+ 默认用Netplan,CentOS 7用network-scripts,CentOS 8+推荐nmcli
  4. 云服务器:公有云(如AWS/Aliyun)需额外配置安全组规则。

引用说明

  • Linux ip 命令文档:man ip
  • Netplan官方配置指南:https://netplan.io
  • Red Hat网络配置文档:https://access.redhat.com/documentation 基于Linux内核5.4+及主流发行版实践,适用于学习目的,操作前请评估环境风险。*

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4300.html

(0)
酷番叔酷番叔
上一篇 2025年6月12日 18:46
下一篇 2025年6月12日 19:07

相关推荐

  • Linux日志查看有哪些高效技巧?

    核心日志位置Linux日志通常存储在 /var/log 目录:系统日志:/var/log/syslog(Debian/Ubuntu)或 /var/log/messages(RHEL/CentOS)认证日志:/var/log/auth.log(记录登录、sudo操作)内核日志:/var/log/kern.log应……

    2025年6月22日
    13100
  • linux如何制作镜像

    Linux 中,可使用 dd 命令制作镜像,如 `dd if=/dev/sdX of=/path/to/image.

    2025年8月10日
    12800
  • Linux如何编辑sh文件?

    在Linux系统中,sh文件(Shell脚本)是常用的自动化脚本文件,通过编辑sh文件可以实现命令的批量执行和复杂操作,编辑sh文件主要涉及文件创建、内容编写、权限设置等步骤,下面详细介绍具体操作方法,编辑前的准备工作在编辑sh文件前,需确认文件是否存在及使用场景,若文件不存在,可通过touch命令创建,例如t……

    2025年9月19日
    13300
  • 如何安全开启Linux远程访问?

    常用远程访问方式SSH(推荐)加密命令行访问,适用于大多数Linux发行版(Ubuntu/CentOS/Debian等),VNC图形界面远程控制,适合需要桌面环境的场景,RDP(通过xrdp)兼容Windows远程桌面协议,实现图形化登录,SSH远程访问配置(以Ubuntu为例)步骤1:安装SSH服务端sudo……

    2025年7月28日
    14800
  • Linux下如何使用动态库和静态库?

    在Linux开发中,静态库和动态库是程序模块化的重要工具,它们通过不同的链接方式影响程序的可执行文件大小、内存占用和更新维护效率,理解两者的创建、使用及差异,能帮助开发者优化项目结构,静态库的创建与使用静态库(.a文件)是在编译阶段将库代码完整链接到可执行文件中,运行时无需额外依赖,创建步骤生成目标文件:使用g……

    2025年8月25日
    13800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信