Linux 网络接口配置命令完整使用指南

📅 2026/6/15 20:15:59
Linux 网络接口配置命令完整使用指南
目录Linux 网络接口配置命令完整使用指南一、核心前置说明先搞懂这些命令不会用错1.1 两大配置体系最核心的区分1.2 与 ifconfig 的功能对应关系1.3 通用前置要求二、现代 Linux 标准首选ip 命令iproute2 套件2.1 核心定位2.2 核心子命令对应 ifconfig 全功能2.3 可直接复制的实战示例适配你的 bond0 场景示例 1查看网络接口信息替代 ifconfig 无参示例 2给 bond0 配置 IP 子网掩码替代 ifconfig bond0 IP netmask示例 3激活 / 关闭 bond0 接口替代 ifconfig bond0 up/down示例 4配置路由替代 route 命令适配 GIS 跨网段访问2.4 优势与劣势三、系统级永久配置工具重启不丢失生产环境首选3.1 nmcli 命令NetworkManager 命令行工具3.1.1 核心定位3.1.2 安装方式3.1.3 可直接复制的实战示例适配 bond0 场景示例 1查看网络接口信息替代 ifconfig示例 2给 bond0 配置固定 IP 子网掩码 网关 DNS永久生效示例 3激活 / 关闭 bond0 接口示例 4配置 bonding 网卡绑定主备模式高可用首选3.1.4 优势与劣势3.2 nmtui 命令NetworkManager 文本图形界面工具3.2.1 核心定位3.2.2 安装方式3.2.3 使用方法3.3 networkctl 命令systemd-networkd 工具3.3.1 核心定位3.3.2 安装方式3.3.3 核心示例四、传统兼容类工具和 ifconfig 同属 net-tools 套件4.1 ifup / ifdown 命令4.1.1 核心定位4.1.2 安装方式4.1.3 示例适配 bond04.1.4 优势与劣势4.2 route 命令4.2.1 核心定位4.2.2 安装方式4.2.3 示例4.3 arp 命令4.3.1 核心定位4.3.2 示例五、网卡硬件级配置工具嵌入式 / 服务器调优专用5.1 ethtool 命令5.1.1 核心定位5.1.2 安装方式5.1.3 核心示例适配 bond05.1.4 优势与劣势5.2 mii-tool 命令5.2.1 核心定位5.2.2 安装方式5.2.3 示例六、辅助配套工具和接口配置配套使用七、关键知识点与常见坑点7.1 临时生效 vs 永久生效7.2 发行版差异7.3 常见坑点八、工具选型总结按你的场景推荐九、最终总结Linux 网络接口配置命令完整使用指南结合你之前的Linux 嵌入式、bonding 网卡绑定、Qt/GIS 开发场景本文按「现代首选→系统级永久配置→传统兼容→硬件调优→辅助配套」的优先级完整梳理所有可配置网络接口的命令每个命令都标注核心定位、与 ifconfig 的对应关系、安装方式、可复制的实战示例含 bond0 适配、优势劣势、适用场景同时讲清「临时生效 / 永久生效」「发行版差异」「常见坑点」等核心知识点新手可直接落地开发 / 运维可直接当手册用。一、核心前置说明先搞懂这些命令不会用错1.1 两大配置体系最核心的区分Linux 网络接口配置分为临时生效和永久生效两大体系所有命令都归属于这两类避免配置后重启丢失的问题表格体系核心特点代表命令适用场景临时生效配置后立即生效重启系统 / 网络服务后直接丢失ifconfig、ip addr/ip link、route临时调试、快速验证、故障排查、一次性配置永久生效配置写入系统配置文件重启后不丢失nmcli、nmtui、手动修改系统配置文件、networkctl服务器、嵌入式设备、生产环境、长期稳定的网络配置1.2 与 ifconfig 的功能对应关系你之前熟悉的ifconfig核心功能可拆解为 4 类所有替代命令都对应这 4 类能力查看网络接口信息ifconfig无参配置接口 IP 地址 / 子网掩码ifconfig eth0 IP netmask激活 / 关闭网络接口ifconfig eth0 up/down修改接口 MAC 地址 / MTU 等参数1.3 通用前置要求所有网络接口配置命令必须使用 root 权限普通用户执行会报错Operation not permitted需加sudo或切换到 root 用户。现代 Linux 发行版CentOS7/Ubuntu16.04默认已淘汰net-tools套件ifconfig/route/arp推荐优先使用ip命令无需额外安装。二、现代 Linux 标准首选ip命令iproute2 套件2.1 核心定位ip是 Linux 内核官方维护的新一代网络管理工具集属于iproute2套件所有现代 Linux 发行版默认自带无需额外安装100% 完全替代 ifconfig/route/arp 等传统工具功能覆盖「接口配置、IP 地址、路由、ARP、隧道、bonding、VLAN」全场景是当前 Linux 网络配置的唯一行业标准工具。2.2 核心子命令对应 ifconfig 全功能ip采用「主命令 子命令」的结构化设计和网络接口配置相关的核心子命令如下表格子命令核心作用对应 ifconfig 的功能ip link管理接口链路层状态激活 / 关闭接口、修改 MAC/MTU、bonding 配置ifconfig up/down、修改 MAC/MTUip addr管理接口IP 地址 / 子网掩码ifconfig 配置 IP/netmaskip route管理系统路由表route命令ip neigh管理 ARP 表arp命令2.3 可直接复制的实战示例适配你的 bond0 场景示例 1查看网络接口信息替代ifconfig无参bash运行# 完整查看所有接口的链路、IP、状态信息 ip addr show # 简写最常用 ip a # 仅查看 bond0 接口的详细信息 ip a s bond0 # 仅查看所有接口的链路状态速率、双工、MAC ip link show # 查看 bond0 接口的详细链路属性 ip -d link show bond0示例 2给 bond0 配置 IP 子网掩码替代ifconfig bond0 IP netmaskbash运行# 给 bond0 配置主 IP192.168.1.100/24对应子网掩码 255.255.255.0 ip addr add 192.168.1.100/24 dev bond0 # 给 bond0 配置第二个辅助 IP别名 ip addr add 10.0.0.100/24 dev bond0 label bond0:0 # 删除 bond0 的指定 IP 地址 ip addr del 192.168.1.100/24 dev bond0 # 清空 bond0 接口的所有 IP 地址 ip addr flush dev bond0注意ip命令使用CIDR 格式表示子网掩码比如/24对应255.255.255.0/16对应255.255.0.0主机 IP 用/32无需单独写netmask参数。示例 3激活 / 关闭 bond0 接口替代ifconfig bond0 up/downbash运行# 激活 bond0 接口 ip link set bond0 up # 关闭 bond0 接口 ip link set bond0 down # 同时修改 bond0 的 MTU 为 1500以太网标准值 ip link set bond0 mtu 1500 # 修改 bond0 的 MAC 地址 ip link set bond0 address 00:11:22:33:44:55 # 给 bond0 接口设置别名 ip link set bond0 alias gis-bond0示例 4配置路由替代route命令适配 GIS 跨网段访问bash运行# 查看系统路由表 ip route show # 简写 ip r # 添加默认路由兜底规则解决上不了网 ip route add default via 192.168.1.1 dev bond0 # 添加静态路由访问 10.0.0.0/24 网段的 GIS 服务器 ip route add 10.0.0.0/24 via 192.168.1.254 dev bond0 metric 50 # 删除默认路由 ip route del default # 删除静态路由 ip route del 10.0.0.0/24 # 排错专用查看访问 10.0.0.100 的数据包路由走向 ip route get 10.0.0.1002.4 优势与劣势✅ 优势官方标准所有现代 Linux 发行版默认自带无需额外安装功能全覆盖一个命令替代ifconfig/route/arp多个工具输出更规范、更易读支持 JSON 格式输出适合脚本自动化性能更好直接和内核 netlink 通信无中间层完美支持 bonding、VLAN、隧道、网桥等高级网络功能❌ 劣势老系统CentOS6/Ubuntu14.04 及更早默认未安装需手动装iproute2包命令结构比ifconfig稍复杂有轻微学习成本三、系统级永久配置工具重启不丢失生产环境首选这类工具直接操作系统的网络管理服务配置的网络参数永久生效重启系统 / 网络服务不会丢失无需手动修改/etc/下的配置文件是服务器、嵌入式设备、生产环境的首选。3.1nmcli命令NetworkManager 命令行工具3.1.1 核心定位nmcli是 Linux 主流网络管理服务NetworkManager的命令行工具所有带图形界面的 Linux 发行版Ubuntu、CentOS Stream、Fedora默认自带并启用 NetworkManagernmcli可以完全替代 ifconfig实现「接口配置、IP 地址、路由、DNS、bonding、VLAN」全功能管理配置的参数直接写入系统配置文件永久生效。3.1.2 安装方式大部分发行版默认自带未安装的话执行bash运行# CentOS/RHEL/Rocky 系列 yum install NetworkManager -y systemctl enable --now NetworkManager # Debian/Ubuntu/Linux Mint 系列 apt install network-manager -y systemctl enable --now NetworkManager3.1.3 可直接复制的实战示例适配 bond0 场景示例 1查看网络接口信息替代ifconfigbash运行# 查看所有接口的详细信息 nmcli device show # 仅查看 bond0 接口 nmcli device show bond0 # 查看所有接口的连接状态 nmcli connection show # 查看 bond0 接口的实时状态 nmcli device status bond0示例 2给 bond0 配置固定 IP 子网掩码 网关 DNS永久生效bash运行# 给 bond0 配置固定 IP配置名 bond0-conn nmcli connection add type ethernet ifname bond0 con-name bond0-conn \ ip4 192.168.1.100/24 \ gw4 192.168.1.1 \ dns4 8.8.8.8,114.114.114.114 \ autoconnect yes # 激活配置立即生效 nmcli connection up bond0-conn # 修改 bond0 的 IP 地址 nmcli connection modify bond0-conn ip4 192.168.1.200/24 # 重新加载配置立即生效 nmcli connection reload bond0-conn # 禁用 bond0 接口的自动连接 nmcli connection modify bond0-conn autoconnect no示例 3激活 / 关闭 bond0 接口bash运行# 激活 bond0 接口 nmcli device connect bond0 # 关闭 bond0 接口 nmcli device disconnect bond0 # 重新加载所有网络配置 nmcli connection reload示例 4配置 bonding 网卡绑定主备模式高可用首选bash运行# 1. 创建 bond0 主接口主备模式100ms 检测一次链路状态 nmcli connection add type bond ifname bond0 con-name bond0-conn \ bond.options modeactive-backup,miimon100 \ ip4 192.168.1.100/24 gw4 192.168.1.1 # 2. 把 eth0、eth1 加入 bond0 作为从接口 nmcli connection add type ethernet ifname eth0 con-name bond0-slave-eth0 master bond0-conn nmcli connection add type ethernet ifname eth1 con-name bond0-slave-eth1 master bond0-conn # 3. 激活所有配置立即生效 nmcli connection up bond0-conn nmcli connection up bond0-slave-eth0 nmcli connection up bond0-slave-eth1 # 4. 查看 bonding 状态 cat /proc/net/bonding/bond03.1.4 优势与劣势✅ 优势配置永久生效直接写入系统配置文件重启不丢失功能全覆盖支持所有高级网络功能bonding、VLAN、网桥、VPN命令结构清晰支持 tab 补全学习成本低所有现代桌面 / 服务器发行版默认自带兼容性拉满支持批量配置、脚本自动化适合大规模服务器管理❌ 劣势必须启用 NetworkManager 服务部分极简嵌入式系统未安装老系统CentOS6 及更早默认未安装需手动配置3.2nmtui命令NetworkManager 文本图形界面工具3.2.1 核心定位nmtui是 NetworkManager 的文本图形界面工具和nmcli功能完全一致但是采用菜单式图形界面无需记忆复杂命令新手也能快速配置网络是ifconfig最友好的图形化替代方案。3.2.2 安装方式和nmcli一致默认自带未安装的话执行bash运行# CentOS/RHEL 系列 yum install NetworkManager-tui -y # Debian/Ubuntu 系列 apt install network-manager -y3.2.3 使用方法直接在终端执行nmtui会弹出文本图形界面通过方向键、回车、空格操作核心支持 3 大功能编辑连接配置 IP、子网掩码、网关、DNS、bonding、VLAN 等所有参数激活连接启用 / 关闭网络接口设置系统主机名全程可视化操作无需记忆任何命令新手也能 1 分钟完成网络配置。3.3networkctl命令systemd-networkd 工具3.3.1 核心定位networkctl是 systemd 自带的网络管理服务systemd-networkd的命令行工具是极简 Linux 系统、嵌入式系统、服务器的轻量网络管理工具无需安装额外包systemd 自带配置的网络参数永久生效适合无图形界面的极简环境。3.3.2 安装方式所有带 systemd 的 Linux 发行版默认自带无需额外安装。3.3.3 核心示例bash运行# 查看所有网络接口状态 networkctl list # 查看 bond0 接口的详细信息 networkctl status bond0 # 重新加载所有网络配置 networkctl reload # 重新配置 bond0 接口 networkctl reconfigure bond0 # 查看系统网络状态 networkctl status注意networkctl仅用于管理和查看网络状态配置网络接口需要手动编写 systemd-networkd 的.network配置文件适合高级用户、嵌入式系统定制。四、传统兼容类工具和 ifconfig 同属 net-tools 套件这类工具和ifconfig是同一时代的产物都属于net-tools套件现在已基本被ip命令淘汰仅在老系统、嵌入式轻量系统中还有少量使用和ifconfig兼容性拉满学习成本极低。4.1ifup/ifdown命令4.1.1 核心定位专门用于激活 / 关闭系统已配置的网络接口是ifconfig up/down的简化版会自动读取系统的网络接口配置文件/etc/network/interfaces或/etc/sysconfig/network-scripts/无需手动指定 IP / 子网掩码是老系统中管理网络接口的常用工具。4.1.2 安装方式bash运行# CentOS/RHEL 系列 yum install net-tools -y # Debian/Ubuntu 系列 apt install net-tools -y4.1.3 示例适配 bond0bash运行# 激活系统已配置的 bond0 接口 ifup bond0 # 关闭 bond0 接口 ifdown bond0 # 重新加载 bond0 接口配置先关后开 ifdown bond0 ifup bond0 # 激活所有已配置的网络接口 ifup -a # 关闭所有网络接口 ifdown -a4.1.4 优势与劣势✅ 优势命令极简一键激活 / 关闭接口无需手动配置参数自动读取系统配置文件避免手动配置错误和ifconfig完全兼容老系统中稳定性拉满❌ 劣势仅能激活 / 关闭接口无法配置 IP / 子网掩码 / MTU 等参数依赖系统的网络配置文件无配置文件的接口无法使用已被淘汰新系统中默认不自带4.2route命令4.2.1 核心定位专门用于管理系统路由表是ifconfig配套的路由管理工具现在已被ip route命令完全替代核心作用是配置静态路由、默认路由解决跨网段访问问题比如你的 GIS 服务器跨网段访问。4.2.2 安装方式和ifconfig一致需安装net-tools套件。4.2.3 示例bash运行# 查看路由表替代 netstat -r route -n # 添加默认路由网关 192.168.1.1从 bond0 发出 route add default gw 192.168.1.1 dev bond0 # 添加静态路由访问 10.0.0.0/24 网段网关 192.168.1.254 route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.254 dev bond0 # 添加主机路由仅访问 172.16.1.100 这台服务器 route add -host 172.16.1.100 gw 192.168.1.254 dev bond0 # 删除默认路由 route del default # 删除静态路由 route del -net 10.0.0.0 netmask 255.255.255.04.3arp命令4.3.1 核心定位管理系统的 ARP 表用于查看、添加、删除 IP 地址和 MAC 地址的映射关系是ifconfig配套的二层网络管理工具现在已被ip neigh命令替代。4.3.2 示例bash运行# 查看 ARP 表 arp -n # 给 192.168.1.1 绑定静态 MAC 地址 arp -s 192.168.1.1 00:11:22:33:44:55 # 删除 ARP 表项 arp -d 192.168.1.1 # 清空 ARP 表 arp -d -a五、网卡硬件级配置工具嵌入式 / 服务器调优专用这类工具用于配置网卡的硬件级参数比如速率、双工模式、自动协商、驱动参数、寄存器读写是ifconfig不具备的功能嵌入式开发、服务器网络调优、故障排查必备。5.1ethtool命令5.1.1 核心定位ethtool是 Linux 下最主流的网卡硬件配置工具几乎所有网卡驱动都支持用于查看和修改网卡的速率、双工模式、自动协商、流控、驱动参数、寄存器、固件版本等是嵌入式开发、网络故障排查的核心工具。5.1.2 安装方式bash运行# CentOS/RHEL 系列 yum install ethtool -y # Debian/Ubuntu 系列 apt install ethtool -y5.1.3 核心示例适配 bond0bash运行# 查看 bond0 网卡的所有硬件信息速率、双工、驱动、固件 ethtool bond0 # 查看 bond0 网卡的驱动信息 ethtool -i bond0 # 查看 bond0 网卡的寄存器信息 ethtool -d bond0 # 查看 bond0 网卡的统计信息收发包、错误包、丢包 ethtool -S bond0 # 配置 bond0 网卡为 1000M 全双工关闭自动协商 ethtool -s bond0 speed 1000 duplex full autoneg off # 配置 bond0 网卡的流控接收/发送都开启 ethtool -A bond0 rx on tx on # 配置 bond0 网卡的 DMA 环大小 ethtool -G bond0 rx 4096 tx 40965.1.4 优势与劣势✅ 优势功能极强覆盖网卡硬件的所有可配置参数几乎所有网卡驱动都支持兼容性拉满是网络故障排查、硬件调优的必备工具支持脚本自动化可批量配置多网卡❌ 劣势仅能配置网卡硬件参数无法配置 IP 地址、路由等三层参数部分参数需要网卡驱动支持不是所有网卡都能修改错误的配置可能导致网卡掉线、无法通信5.2mii-tool命令5.2.1 核心定位mii-tool是ethtool的简化版专门用于查看和配置网卡的 MII 接口参数核心功能是查看网卡的速率、双工模式、链路状态是老系统、嵌入式轻量系统的常用工具现在已基本被ethtool替代。5.2.2 安装方式bash运行yum install net-tools -y5.2.3 示例bash运行# 查看所有网卡的链路状态 mii-tool # 查看 bond0 网卡的详细状态 mii-tool -v bond0 # 配置 bond0 为 100M 全双工 mii-tool -F 100baseTx-FD bond0 # 恢复自动协商 mii-tool -r bond0六、辅助配套工具和接口配置配套使用这类工具用于配置和网络接口配套的系统参数是ifconfig配置网络后的配套工具日常开发 / 运维必备。表格工具核心作用示例hostname/hostnamectl配置系统主机名hostnamectl set-hostname gis-server永久生效、hostname gis-server临时生效resolvectl/resolvconf配置系统 DNS 服务器resolvectl dns bond0 8.8.8.8 114.114.114.114ss查看系统套接字、端口监听状态替代netstatss -tuln、ss -tulngrep 8080ping/traceroute/mtr网络连通性、路由路径排查ping 192.168.1.1、traceroute 10.0.0.100、mtr 10.0.0.100tcpdump/wireshark网络抓包、故障排查tcpdump -i bond0 host 10.0.0.100 and port 8080iptables/firewalld防火墙规则配置iptables -A INPUT -p tcp --dport 8080 -j ACCEPT、firewall-cmd --add-port8080/tcp --permanent七、关键知识点与常见坑点7.1 临时生效 vs 永久生效所有ifconfig、ip addr/ip link、route命令配置的参数都是临时生效重启系统 / 网络服务后会直接丢失。要永久生效必须使用nmcli/nmtui写入系统配置文件或手动修改/etc/network/interfacesDebian/Ubuntu、/etc/sysconfig/network-scripts/CentOS/RHEL下的配置文件。7.2 发行版差异Debian/Ubuntu/Linux Mint 系列网络配置文件默认在/etc/network/interfaces新系统默认使用 NetworkManager。CentOS/RHEL/Rocky/AlmaLinux 系列网络配置文件默认在/etc/sysconfig/network-scripts/ifcfg-xxx新系统默认使用 NetworkManager。嵌入式系统OpenWrt / 树莓派网络配置文件通常在/etc/config/network使用uci命令管理。7.3 常见坑点权限问题所有网络配置命令必须用 root 权限普通用户执行会报错需加sudo。子网掩码 / CIDR 错误ip命令的 CIDR 后缀不能写错主机 IP 必须用/32C 类网段用/24否则会导致路由错误。bonding 配置坑配置 bonding 必须先加载bonding内核模块modprobe bonding从网卡必须配置为slave模式不能有独立 IP否则 bonding 无法正常工作。防火墙拦截网络配置正确但无法通信大概率是iptables/firewalld防火墙拦截了数据包需临时关闭防火墙测试再配置对应的放行规则。网关和接口不在同一网段网关 IP 必须和本机接口的 IP 在同一个子网否则路由无效系统会提示「网关不可达」。八、工具选型总结按你的场景推荐结合你之前的Linux 嵌入式、bonding 网卡绑定、Qt/GIS 开发场景我给你整理了优先级最高的工具选型避免学习冗余内容表格场景首选工具备选工具日常临时配置 IP / 激活接口、快速调试ip addr/ip linkifconfig老系统兼容生产环境 / 服务器 / 嵌入式设备永久网络配置nmcli/nmtui手动修改系统配置文件网卡硬件调优、网络故障排查ethtoolmii-tool跨网段访问、路由配置ip routeroute命令网络连通性、故障排查ping/traceroute/tcpdumpmtr/wireshark九、最终总结ifconfig是传统 Linux 网络配置工具现在已被官方淘汰现代 Linux 系统推荐优先使用ip命令完全替代ifconfig所有功能且更强大、更规范。生产环境、嵌入式设备需要永久生效的网络配置优先使用nmcli/nmtui无需手动修改配置文件稳定可靠。网卡硬件级调优、故障排查使用ethtool命令是嵌入式开发、服务器运维的必备工具。所有网络配置命令都需要 root 权限注意区分「临时生效」和「永久生效」避免重启后配置丢失。