如何在Linux系统中设置IP地址?

在Linux系统中设置IP地址是网络配置的基础操作,主要分为临时设置和永久设置两种方式,不同发行版(如Ubuntu、CentOS等)的配置方法略有差异,以下从临时配置、永久配置(分发行版介绍)、注意事项及常见问题等方面详细说明。

如何给linux设置ip地址

临时设置IP地址(重启后失效)

临时设置适用于快速测试或短期使用,主要通过ipifconfig命令实现(ifconfig已逐渐被ip取代,但部分旧系统仍支持)。

使用ip命令

(1)为网卡(如eth0)添加IP地址及子网掩码:

sudo ip addr add 192.168.1.100/24 dev eth0

(2)启用网卡:

sudo ip link set eth0 up

(3)配置默认网关(若需访问外网):

sudo ip route add default via 192.168.1.1

使用ifconfig命令

(1)设置IP地址及子网掩码:

sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0

(2)启用网卡:

sudo ifconfig eth0 up

(3)配置默认网关:

sudo route add default gw 192.168.1.1

临时配置无需修改配置文件,但系统重启后会丢失,可通过ip addr showifconfig查看配置结果。

如何给linux设置ip地址

永久设置IP地址(重启后生效)

永久设置需修改网络配置文件,不同发行版的配置工具和文件路径不同,以下分主流发行版介绍。

Ubuntu/Debian系(18.04及以上版本使用Netplan)

Ubuntu 18.04后默认使用Netplan作为网络配置工具,配置文件为YAML格式,位于/etc/netplan/目录(如01-network-manager-all.yaml)。

(1)编辑配置文件(以eth0为例,设置静态IP):

sudo nano /etc/netplan/01-network-manager-all.yaml

(2)添加以下内容(注意缩进,YAML对格式敏感):

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no          # 关闭DHCP
      addresses:
        - 192.168.1.100/24  # 静态IP及子网掩码
      gateway4: 192.168.1.1   # 默认网关
      nameservers:
          addresses: [8.8.8.8, 8.8.4.4]  # DNS服务器

(3)应用配置:

sudo netplan apply

CentOS/RHEL系(7及以上版本使用NetworkManager)

CentOS 7后推荐使用NetworkManager,可通过命令行工具nmcli或修改配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0)配置。

方法1:使用nmcli命令行(推荐)

(1)查看当前网络连接:

nmcli connection show

(2)修改指定网卡(如eth0)的静态IP配置:

如何给linux设置ip地址

sudo nmcli con mod eth0 ipv4.addresses 192.168.1.100/24
sudo nmcli con mod eth0 ipv4.gateway 192.168.1.1
sudo nmcli con mod eth0 ipv4.dns "8.8.8.8 8.8.4.4"
sudo nmcli con mod eth0 ipv4.method manual  # 设置为静态模式

(3)重启网络连接使配置生效:

sudo nmcli con up eth0

方法2:修改配置文件(传统方式)

(1)编辑网卡配置文件:

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

(2)修改或添加以下内容:

TYPE=Ethernet
BOOTPROTO=static        # 静态IP(DHCP为动态)
DEVICE=eth0
ONBOOT=yes              # 开机启用
IPADDR=192.168.1.100    # 静态IP
NETMASK=255.255.255.0   # 子网掩码
GATEWAY=192.168.1.1     # 默认网关
DNS1=8.8.8.8            # 主DNS
DNS2=8.8.4.4            # 辅DNS

(3)重启网络服务:

sudo systemctl restart network

不同配置方法对比

为方便选择,以下表格总结主要配置方法的特点:

方法 适用发行版 是否永久 配置位置/命令 特点
ip命令 所有Linux发行版 临时 ip addr/route 即时生效,重启失效,适合测试
ifconfig命令 旧版Linux/Unix 临时 ifconfig/route 逐渐被淘汰,部分系统需安装net-tools
Netplan Ubuntu 18.04+ 永久 /etc/netplan/*.yaml YAML格式,支持复杂网络拓扑
nmcli CentOS 7+/RHEL 7+ 永久 nmcli con mod 命令行操作,无需直接编辑文件
ifcfg配置文件 CentOS 6-/RHEL 6- 永久 /etc/sysconfig/network-scripts/ifcfg-eth0 传统方式,兼容性好,但手动修改易出错

注意事项

  1. 网卡名称确认:现代Linux系统中,网卡名称可能不是eth0(如ens33enp0s3),可通过ip addrls /sys/class/net查看实际名称。
  2. IP冲突检查:设置静态IP前,确保该IP未被网络中其他设备占用(可通过ping 192.168.1.100检查)。
  3. DNS配置重要性:若仅设置IP和网关但未配置DNS,可能导致无法解析域名(如ping www.baidu.com失败),需确保nameserversDNS1/DNS2正确。
  4. 配置备份:修改永久配置文件前,建议先备份(如sudo cp /etc/netplan/01-network-manager-all.yaml /etc/netplan/01-network-manager-all.yaml.bak),避免配置错误导致网络不可用。

FAQs

问题1:临时设置的IP地址重启后会失效吗?
答:是的,通过ipifconfig命令设置的IP地址仅保存在内存中,系统重启后会从配置文件(如Netplan、ifcfg文件)重新读取网络配置,因此临时设置会丢失,若需长期使用,必须通过永久配置方式修改配置文件。

问题2:如何确认IP地址设置成功?
答:可通过以下步骤验证:(1)执行ip addr showifconfig,查看指定网卡是否已显示正确的IP地址和子网掩码;(2)执行ip route showroute -n,检查默认网关是否正确添加;(3)ping网关(如ping 192.168.1.1)确认网络连通性;(4)ping外网域名(如ping www.baidu.com)确认DNS配置是否生效,若以上步骤均正常,则IP地址设置成功。

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

(0)
酷番叔酷番叔
上一篇 1天前
下一篇 1天前

相关推荐

  • : 如何快速提升网站流量?}

    在Linux环境中解析JSON文件是开发者和系统管理员的常见需求,JSON作为轻量级数据交换格式,广泛应用于配置、API响应和日志处理,以下是几种高效、安全的解析方法,结合命令行工具和编程语言,满足不同场景需求:命令行工具解析(快速轻量)jq 工具(推荐首选)安装:sudo apt install jq # D……

    2025年6月28日
    2400
  • Linux如何隐藏文件夹?

    方法1:通过命名规则隐藏(推荐)原理:Linux默认隐藏以点()开头的文件/文件夹,步骤:打开终端(Ctrl+Alt+T),进入目标目录: cd /path/to/parent_directory重命名文件夹(以隐藏文件夹 private 为例): mv private .private效果:终端中通过 ls……

    2025年6月22日
    2900
  • Linux需要安装杀毒软件吗?

    Linux是否需要杀毒软件?尽管Linux系统因架构安全性和低市场占有率较少成为病毒目标,但以下场景仍需杀毒防护:服务器防护:防止恶意软件入侵Web服务器或数据库文件交互安全:扫描从Windows设备接收的文件(如邮件附件)合规要求:企业环境的安全审计规范多用户系统:公共或共享设备的风险防控安装前准备更新系统……

    2025年7月5日
    2500
  • 在linux如何关机

    Linux中,可使用命令“sudo shutdown -h now”来关机,sudo

    2025年8月10日
    500
  • 在Linux操作系统中,如何生成ko文件?具体步骤是怎样的?

    Linux 内核模块(Kernel Module)是动态加载到内核中的代码片段,用于扩展内核功能,而 .ko 文件就是编译后的内核模块文件,生成 .ko 文件需要准备开发环境、编写模块代码、配置 Makefile 并通过编译工具完成,以下是详细步骤和说明,环境准备在开始生成 .ko 文件前,需确保系统已安装必要……

    10小时前
    200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信