Linux如何配置静态动态IP?命令与文件双方法

基础概念

  1. 网卡命名规则

    • 传统命名:eth0eth1(旧版本)
    • 可预测命名:enp0s3(以太网)、wlp2s0(无线,新版本通用)
    • 查看网卡名称:ip link showls /sys/class/net
  2. 关键配置文件路径

    • Ubuntu/Debian/etc/network/interfaces
    • CentOS/RHEL/Fedora/etc/sysconfig/network-scripts/ifcfg-<网卡名>
    • 通用工具NetworkManager(推荐,通过nmclinmtui配置)

配置静态IP地址

方法1:通过配置文件(以Ubuntu为例)

sudo nano /etc/network/interfaces
auto enp0s3        # 开机自动激活网卡
iface enp0s3 inet static  # 静态IP
address 192.168.1.100     # IP地址
netmask 255.255.255.0     # 子网掩码
gateway 192.168.1.1       # 网关
dns-nameservers 8.8.8.8   # DNS服务器

保存后重启网络:

sudo systemctl restart networking  # Ubuntu
sudo systemctl restart NetworkManager  # CentOS/通用

方法2:使用nmcli(推荐,实时生效)

nmcli con add type ethernet con-name "my-static" ifname enp0s3 \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8" \
ipv4.method manual

激活连接:

nmcli con up "my-static"

配置动态IP(DHCP)

配置文件方式(CentOS示例)

编辑 /etc/sysconfig/network-scripts/ifcfg-enp0s3

DEVICE=enp0s3
BOOTPROTO=dhcp  # 关键参数
ONBOOT=yes

重启服务:

sudo systemctl restart network

nmcli命令方式

nmcli con add type ethernet ifname enp0s3 con-name "my-dhcp"
nmcli con mod "my-dhcp" ipv4.method auto
nmcli con up "my-dhcp"

网络调试与验证

  1. 查看IP配置
    ip addr show    # 替代旧版ifconfig
  2. 测试网络连通性
    ping 8.8.8.8          # 测试外网
    ping 192.168.1.1      # 测试网关
  3. 检查DNS解析
    nslookup google.com

故障排除

  • 网卡未启动
    sudo ip link set enp0s3 up  # 手动激活
  • 配置未生效
    检查日志:journalctl -u NetworkManager
    重载配置:nmcli con reload
  • IP冲突
    更换IP或使用ARP检测:arp-scan --localnet

安全建议

  1. 限制远程访问
    配置防火墙(如ufwfirewalld),仅开放必要端口。
  2. 禁用未使用网卡
    在配置文件中设置 ONBOOT=no
  3. 使用SSH密钥认证
    避免密码登录,防止中间人攻击。

高级配置

  • 多IP绑定
    nmcli con mod "my-static" +ipv4.addresses "192.168.1.200/24"
  • 网卡聚合(Bonding)
    需加载内核模块,参考 /etc/modprobe.d/bonding.conf

引用说明

  • Linux ip命令手册:man ip
  • NetworkManager官方文档:https://networkmanager.dev/
  • Ubuntu网络配置指南:Ubuntu Server Networking
  • Red Hat系统网络管理:RHEL 8 Configuring Networks

提示:生产环境操作前建议备份配置文件(如cp /etc/network/interfaces{,.bak}),不同发行版命令可能略有差异,请以官方文档为准。

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

(0)
酷番叔酷番叔
上一篇 2025年7月6日 17:03
下一篇 2025年7月6日 17:16

相关推荐

  • Linux安装JDK1.7的详细步骤是什么?

    在Linux系统中安装JDK1.7(Java Development Kit 7)虽然现在已不是主流选择,但部分老旧项目或特定环境仍需此版本,以下是详细的安装步骤,涵盖下载、上传、解压、环境变量配置及验证等全过程,适用于主流Linux发行版(如CentOS、Ubuntu等),准备工作:确认系统环境与下载JDK1……

    2025年9月24日
    14900
  • 如何在Linux中安全删除只读文件?

    为什么只读文件无法直接删除?Linux文件权限分为三类:读(r):允许查看文件内容写(w):允许修改或删除文件执行(x):允许运行文件只读文件的权限通常为 -r–r–r–(644),缺少“写”权限,用户需先获得写权限或使用管理员权限才能删除,删除只读文件的4种方法方法1:添加写权限后删除(推荐)通过 ch……

    2025年7月21日
    18900
  • Linux系统如何删除文件?操作方法与步骤详解

    在Linux系统中,删除文件是日常操作中常见的任务,但不同场景下需要使用不同的命令和方法,掌握正确的删除方式不仅能提高效率,还能避免误操作导致的数据丢失,本文将详细介绍Linux中删除文件的各类方法、注意事项及实用技巧,基础删除命令:rmrm(remove)是Linux中最常用的删除文件命令,支持删除单个文件……

    2025年8月28日
    2.3K00
  • linux中如何查看设备信息

    Linux中,可使用lsblk查看块设备信息,lspci

    2025年8月18日
    13500
  • Linux网络不通?Ping命令如何快速排障

    基础用法基本命令格式ping [目标IP或域名]示例:ping 8.8.8.8 # 测试与Google DNS的连通性ping example.com # 通过域名测试(自动解析为IP)关键参数解析参数作用示例-c [次数]指定发送数据包数量ping -c 4 8.8.8.8(发送4次后停止)-i [秒数]设置……

    2025年6月22日
    18200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信