如何修改Linux系统的上网网卡配置?

在Linux系统中,改变上网网卡通常涉及识别当前网络接口、配置目标网卡参数、调整路由策略等操作,具体方法需根据网络环境(如静态IP/DHCP)和发行版(Ubuntu/CentOS等)灵活调整,以下是详细操作步骤和注意事项。

如何改变linux上网网卡

识别当前网络状态与网卡信息

首先需确认当前系统中的网卡名称及网络配置状态,通过以下命令可查看所有网络接口及其IP信息:

ip a  # 查看所有网卡名称(如ens33、eth0)及IP配置
ip route show  # 查看当前路由表,确认默认网关指向的网卡
nmcli connection show  # 列出NetworkManager管理的网络连接(适用于Ubuntu/CentOS 7+)

输出中ens33状态为UP且包含inet地址,则表示当前该网卡为活动网卡;若默认网关通过ens33转发,则该网卡为当前上网网卡。

临时切换上网网卡(无需重启)

若需临时指定某网卡为上网网卡(如测试备用网络),可通过修改路由表实现:

  1. 激活目标网卡(若未激活):
    ip link set <网卡名> up  # ip link set ens38 up
  2. 为目标网卡配置IP(若未配置):
    ip addr add <IP地址/子网掩码> dev <网卡名>  # ip addr add 192.168.1.100/24 dev ens38
  3. 添加默认网关(指向目标网卡所在网络):
    ip route add default via <网关IP> dev <网卡名>  # ip route add default via 192.168.1.1 dev ens38
  4. 验证切换
    ip route show  # 确认默认网关是否指向目标网卡
    ping 8.8.8.8   # 测试外网连通性

    注意:临时配置在系统重启后会失效,需通过永久配置保存。

永久修改上网网卡配置

(一)基于NetworkManager的发行版(Ubuntu 18.04+/CentOS 7+)

NetworkManager是现代Linux发行版的默认网络管理工具,可通过命令行或图形界面配置:

如何改变linux上网网卡

  1. 命令行配置(nmcli)

    • 查看目标网卡连接名称:nmcli connection show
    • 修改目标连接的IP配置(以静态IP为例):
      nmcli con mod "<连接名>" ipv4.method manual ipv4.addresses <IP/掩码> ipv4.gateway <网关> ipv4.dns <DNS服务器>
      # nmcli con mod "ens38" ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns 8.8.8.8
    • 启动连接并设置自动连接:
      nmcli con up "<连接名>"
      nmcli con mod "<连接名>" connection.autoconnect yes
    • 禁用原上网网卡连接(避免冲突):
      nmcli con down "<原连接名>"  # nmcli con down "ens33"
  2. 图形界面配置(nmtui)

    • 执行nmtui命令,进入文本界面,选择“Edit a connection”→ 选择目标连接 → 修改IPv4配置 → 保存退出 → 激活连接。

(二)基于传统配置文件的发行版(CentOS 6/Ubuntu 16.04及更早)

此类系统通过ifcfg文件配置网卡参数:

  1. 定位配置文件
    ls /etc/sysconfig/network-scripts/  # 查找ifcfg-<网卡名>文件,如ifcfg-ens38
  2. 编辑目标网卡配置文件
    vim /etc/sysconfig/network-scripts/ifcfg-ens38

    添加/修改以下参数:

    TYPE=Ethernet
    BOOTPROTO=static  # 静态IP,DHCP则改为dhcp
    IPADDR=192.168.1.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    ONBOOT=yes  # 开机自启
  3. 禁用原网卡配置文件(可选,避免IP冲突):
    mv /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak
  4. 重启网络服务
    systemctl restart network  # CentOS 7+
    service networking restart  # Ubuntu 16.04及更早

多网卡环境下的路由策略优化

若系统存在多张网卡,需确保路由策略正确,避免流量错误转发,可通过ip rule添加策略路由,例如指定特定IP段通过目标网卡访问:

如何改变linux上网网卡

ip rule add from <源IP段> table <路由表号> pref 10000  # 添加策略
ip route add default via <目标网关> dev <目标网卡> table <路由表号>  # 为指定表添加默认路由
ip route flush cache  # 刷新路由缓存

永久保存需将规则写入/etc/rc.local或NetworkManager的 dispatcher 脚本。

常用工具与命令速查

操作场景 命令/工具 说明
查看网卡信息 ip a / ifconfig 显示网卡状态、IP地址、MAC地址等
查看路由表 ip route show / route -n 查看默认网关、目标网络等路由信息
激活/禁用网卡 ip link set <网卡名> up/down 临时启用或禁用网卡
配置静态IP(临时) ip addr add <IP/掩码> dev <网卡名> 临时为网卡分配IP,重启后失效
配置默认网关(临时) ip route add default via <网关> dev <网卡名> 临时添加默认网关
重启网络服务 systemctl restart network CentOS 7+/Ubuntu 18.04+
图形化网络配置 nmtui / gnome-control-center network 文本/图形界面工具,适合新手

注意事项

  1. 避免IP冲突:修改IP前确保目标IP未被网络中其他设备使用,可通过ping <IP>测试。
  2. 备份配置文件:修改ifcfg文件前建议备份,避免配置错误导致网络中断。
  3. 防火墙与SELinux:CentOS系统需检查firewalldiptables是否阻止出站流量,必要时临时关闭测试:systemctl stop firewalld
  4. DHCP与静态IP:若网络环境为DHCP,确保目标网卡配置文件中BOOTPROTO=dhcp,避免手动IP冲突。

相关问答FAQs

Q1:修改网卡配置后无法上网,如何排查?
A:首先检查网卡状态:ip link show <网卡名>,确认是否为UP状态;其次查看IP配置:ip addr show <网卡名>,确认IP、子网掩码是否正确;然后检查默认网关:ip route show | grep default,确保网关可达(可通过ping <网关>测试);最后检查DNS解析:ping 8.8.8.8(测试外网连通性),ping www.baidu.com(测试DNS解析),若DNS异常,修改/etc/resolv.conf添加nameserver 8.8.8.8

Q2:如何让Linux在多网卡环境下优先使用特定网卡上网?
A:可通过设置路由表和策略路由实现优先级,优先使用ens38,可执行以下步骤:

  1. ens38添加默认网关:ip route add default via 192.168.1.1 dev ens38
  2. 添加策略路由,指定所有流量优先从ens38发出:
    ip rule add pref 10000 from all lookup main
    ip route add default dev ens38 table main
  3. 永久保存:将上述命令写入/etc/rc.local,并赋予执行权限:chmod +x /etc/rc.local
    若NetworkManager管理网卡,可通过修改连接优先级:nmcli con mod "<连接名>" connection.autoconnect-priority 100(数值越大优先级越高)。

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

(0)
酷番叔酷番叔
上一篇 2025年9月26日 11:12
下一篇 2025年9月26日 11:34

相关推荐

  • Linux程序卡死时如何强制保存未保存的编辑内容?

    在Linux系统中,强制保存操作通常针对未正常关闭的进程、被占用的文件或系统缓冲区数据,目的是避免数据丢失或恢复文件状态,由于Linux的多任务和文件系统特性,强制保存需结合具体场景(如文本编辑、系统同步、进程管理等)选择合适方法,以下是详细操作指南及注意事项,文本编辑器中的强制保存在Linux命令行环境下,v……

    2025年9月17日
    6800
  • Linux如何解除SSH免密登录配置?

    Linux系统中,免密登录通常基于SSH密钥认证实现,通过将本地公钥添加到远程服务器的~/.ssh/authorized_keys文件中,实现无需输入密码即可登录,若需要解除免密登录(如安全需求变更、密钥泄露或仅需临时禁用),可通过以下方法操作,具体场景和步骤如下:解除免密登录的核心方法免密登录的核心是SSH密……

    2025年9月22日
    7100
  • Windows系统下如何正确安装Linux?详细步骤与方法指导

    在Windows系统中安装Linux是许多用户的需求,无论是为了学习开发、体验开源系统,还是运行特定软件,都有多种可行的方式,常见的安装方法包括双系统、虚拟机和Windows Subsystem for Linux(WSL2),每种方法各有特点,用户可根据自身需求选择,以下将详细介绍这三种方法的操作步骤、注意事……

    2025年9月25日
    6600
  • 磁盘空间不足怎么办?

    Linux 分区与挂载点详解:从基础到实战为什么需要分区和挂载点?在 Linux 系统中,分区是将物理硬盘划分为逻辑存储单元的过程,而挂载点则是将分区连接到文件系统目录的桥梁,将 /dev/sda1 分区挂载到 /home 目录,意味着所有存储在家目录的文件实际保存在该分区合理的分区方案能提升系统安全性(如隔离……

    2025年7月28日
    8800
  • 怎样在Linux虚拟机轻松进入桌面环境?

    前期准备安装虚拟化软件VMware Workstation(官网下载)VirtualBox(官网下载)二者均提供免费版本,安装时需启用虚拟化支持(在BIOS中开启Intel VT-x/AMD-V),准备Linux镜像推荐发行版:Ubuntu(自带桌面)、CentOS(需手动安装桌面)从官方渠道下载ISO:Ubu……

    2025年7月13日
    11000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信