找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2580

积分

0

好友

346

主题
发表于 2 小时前 | 查看: 1| 回复: 0

管理Linux服务器,网络配置是绕不开的基础技能。无论是为新服务器分配IP,还是排查诡异的网络故障,熟悉相关的命令和配置文件都能让你事半功倍。下面我们来梳理一下那些与Linux网络配置息息相关的核心命令和关键文件。

1. 通过 DHCP 动态获取 IP

如果局域网中存在 DHCP 服务器,我们可以让网卡动态获取IP地址,省去手动配置的麻烦。

  • 临时获取:使用 dhclient 命令可以为指定网卡临时请求一个IP地址。
    dhclient <设备名>
  • 永久配置:若要每次启动都自动通过DHCP获取IP,需要修改网络接口配置文件。通常是去掉静态的 IPADDR 参数,并加入 BOOTPROTO=dhcp 参数。

2. 设置网关:route 命令

route 命令用于查看或管理内核的路由表。添加默认网关(即数据包默认的出口)是最常见的操作之一。

  • 命令行添加(临时生效)
    route add default gw 211.84.168.126
  • 永久配置:更常见的做法是直接修改 /etc/sysconfig/network 文件,在其中设置:
    GATEWAY=211.84.168.126

    当然,在现代的Linux发行版中,网关信息更常被直接配置在网卡配置文件里(见下文第6点)。

3. 配置 DNS 客户端:/etc/resolv.conf

DNS服务器的地址配置在 /etc/resolv.conf 文件中。它的格式很简单:

domain example.com
nameserver 211.84.160.8
# 可以配置多个nameserver,系统会按顺序尝试
nameserver 8.8.8.8

修改此文件后通常立即生效。不过需要注意的是,在一些使用 systemd-resolvedNetworkManager 的系统中,此文件可能被自动管理,手动修改会被覆盖。

4. 网络连通性测试:ping 命令

ping 是检查网络连通性的最常用工具,通过发送ICMP回显请求包来测试与目标主机的连接。

  • 基本用法
    ping -c 4 8.8.8.8  # 向8.8.8.8发送4个探测包后停止
  • 禁止被ping(ICMP屏蔽)
    • 临时生效:修改内核参数,立即丢弃所有入站ICMP回显请求。
      echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    • 永久生效:编辑 /etc/sysctl.conf 文件,添加或修改以下行:
      net.ipv4.icmp_echo_ignore_all = 1

      保存后,执行 sysctl -p 命令使配置生效。这是一种基础的主机安全加固手段,更多关于网络/系统安全的实践可以在社区中找到相关讨论。

5. 追踪网络路径:traceroute 命令

当网络连接出现问题时,traceroute(或 tracepath)命令可以帮助你诊断数据包在传输过程中经过了哪些节点,是在哪一跳丢失的。

traceroute www.baidu.com

该命令会显示从你的主机到目标域名或IP地址之间,每一跳路由器的响应情况。

6. 网络接口的永久配置

在RHEL、CentOS、Fedora等系统上,网络接口的永久配置文件位于 /etc/sysconfig/network-scripts/ 目录下,命名规则为 ifcfg-<接口名>,例如 ifcfg-enp0s25

一个典型的静态IP配置示例如下:

TYPE=Ethernet
BOOTPROTO=none          # 设为static或none表示静态IP,dhcp表示动态获取
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s25            # 网络连接名称
UUID=e0e988ef-54e1-477a-8748-cc3bcf26e598
ONBOOT=yes              # 开机自动激活此连接
IPADDR0=211.84.168.73   # IP地址
PREFIX0=24              # 子网掩码位数,等同于 NETMASK=255.255.255.0
GATEWAY0=211.84.168.126 # 网关地址
DNS1=211.84.160.8       # 主DNS服务器
HWADDR=00:16:76:CB:BA:CE # 物理MAC地址(可选绑定)
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

配置文件修改完成后,必须重启网络服务才能使新的配置生效:

# 传统SysVinit系统
service network restart

# 使用Systemd的系统
systemctl restart NetworkManager.service
# 或者重启network服务(取决于系统使用的网络管理工具)
# systemctl restart network

熟练掌握这些命令和配置文件,是进行服务器运维/DevOps/SRE工作的基础。它们能帮助你在各种场景下,从基础配置到复杂排错,都能做到心中有数,手中有术。如果你想深入了解某个命令的进阶用法或与其他工具的结合,欢迎到云栈社区的相关板块与大家一起探讨。




上一篇:9800X3D配RTX 5070Ti:一套白色主题的4K游戏主机装机分享
下一篇:TinyType:用动物化设计治愈碎片记录焦虑的移动应用体验
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-31 06:03 , Processed in 0.659813 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表