Linux修改网卡配置IP及DNS(RHEL)

一、命令行方式

1、编辑网卡配置文件

vim /etc/sysconfig/network-scripts/ifcfg-ens33
ONBOOT=yes #可以改成yes,以便开机自动连接

在底下追加

IPADDR=主机ip
PREFIX=24
GATEWAY=网关ip
DNS1=dns地址
PEERDNS=no

2、指定本机DNS服务器地址

1 ) 修改配置文件

vim /etc/resolv.conf
nameserver dns地址 #追加方式

2 )命令行直接追加

echo nameserver dns地址 >> /etc/resolv.conf 

二、网络管理器方式

1、输入nmtui进入网络管理器

nmtui

在这里插入图片描述
2、用↑↓键选中 编辑连接 回车确定
在这里插入图片描述
3、选中要配置的连接
在这里插入图片描述
[ ] 内用空格进行选中,选中则显示 [×]
4、最后确定并退出
在这里插入图片描述

三、图形界面方式

1、进入有线配置
在这里插入图片描述
2、选中连接的配置
在这里插入图片描述
3、配置后应用
在这里插入图片描述
在这里插入图片描述

最后systemctl restart network —重启服务 即可生效

<think>嗯,用户问的是如何在Linux系统中为网卡配置IP地址。我需要结合之前提供的引用信息和之前的回答来给出详细的步骤。首先,用户可能对基本的网络配置不太熟悉,所以需要分步骤说明,包括临时配置和永久配置两种方法。 根据引用内容,用户提到了不同发行版的配置方法,比如CentOS和SUSE,还有使用ip命令和修改配置文件的方式。需要覆盖这些方面。同时,用户之前的回答中提到了Open vSwitch的网桥配置,但这次的问题更基础,是关于普通网卡IP设置,所以不需要涉及OVS的内容。 用户可能需要知道临时配置和永久配置的区别,临时配置重启后会失效,而永久配置则通过修改配置文件实现。需要分别说明这两种方法。比如使用ip addr add命令临时设置,以及修改/etc/sysconfig/network-scripts/下的配置文件(针对CentOS)或者/etc/network/interfaces(针对Debian/Ubuntu)。 还要注意不同Linux发行版的差异,比如CentOS和SUSE的配置文件路径不同,用户可能在使用不同的系统,所以需要给出不同发行版的指导。比如引用[2]提到CentOS 7的配置文件在/etc/sysconfig/network-scripts/,而引用[3]提到SUSE的配置文件在/etc/sysconfig/network/,需要分别说明。 另外,用户可能还需要配置多个IP地址到同一网卡,这在引用[2]、[4]中都有提到,比如复制配置文件并修改为ifcfg-ens192:1的形式,或者使用ip命令添加多个地址。这部分也需要包含在回答中,给出具体步骤。 此外,用户可能关心如何设置默认路由,引用[1]中提到默认路由的设置方法,需要结合route命令或者修改配置文件中的网关部分。需要解释默认路由的作用,以及如何配置。 验证配置是否生效的步骤也很重要,比如使用ip addr show或ifconfig检查IP地址,使用ip route检查路由表,使用ping测试连通性。这些步骤能帮助用户确认配置是否正确。 常见问题部分需要考虑用户可能遇到的错误,比如服务重启失败、IP冲突、权限问题等,给出解决方案。例如,引用[2]中提到修改UUID的必要性,如果用户没有修改可能会导致配置不生效,需要提醒这一点。 最后,相关问题部分可以引导用户进一步学习,比如多个IP配置、双网卡路由、网络服务管理命令等,这些都与当前问题相关,能帮助用户扩展知识。</think>--- ### **Linux 网卡 IP 地址配置指南** --- #### **一、配置原理** 在 Linux 中,网卡 IP 地址可通过**临时配置**(重启失效)或**永久配置**(写入配置文件)实现。核心方法包括: 1. 使用 `ip` 或 `ifconfig` 命令(临时配置) 2. 修改网络配置文件(永久配置) 3. 通过 `NetworkManager` 工具(图形界面或命令行) --- #### **二、分步操作** ##### **1. 临时配置(立即生效,重启失效)** **方法一:使用 `ip` 命令(推荐)** ```bash # 为 eth0 设置 IP 地址和子网掩码 sudo ip addr add 192.168.1.100/24 dev eth0 # 启用网卡 sudo ip link set eth0 up # 验证配置 ip addr show eth0 ``` **方法二:使用 `ifconfig`(旧版工具)** ```bash sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up ``` ##### **2. 永久配置(需重启网络服务)** **CentOS/RHEL 系统**(引用[^2][^4]) 1. 编辑网卡配置文件(以 `ens192` 为例): ```bash sudo vi /etc/sysconfig/network-scripts/ifcfg-ens192 ``` 2. 修改或添加以下参数: ```ini BOOTPROTO=static # 静态 IP 模式 ONBOOT=yes # 开机自动启用 IPADDR=192.168.1.100 # 主 IP 地址 NETMASK=255.255.255.0 # 子网掩码 GATEWAY=192.168.1.1 # 默认网关 DNS1=8.8.8.8 # DNS 服务器 ``` **Debian/Ubuntu 系统** 1. 编辑 `/etc/network/interfaces`: ```bash sudo vi /etc/network/interfaces ``` 2. 添加配置: ```ini auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8 ``` **SUSE 系统**(引用[^3]) 1. 编辑配置文件: ```bash sudo vi /etc/sysconfig/network/ifcfg-eth0 ``` 2. 添加类似内容: ```ini BOOTPROTO='static' IPADDR='192.168.1.100' NETMASK='255.255.255.0' GATEWAY='192.168.1.1' ``` ##### **3. 重启网络服务** ```bash # CentOS/RHEL/SUSE sudo systemctl restart network # Debian/Ubuntu sudo systemctl restart networking ``` ##### **4. 配置IP 地址(单网卡IP)** **方法一:临时添加**(引用[^4]) ```bash sudo ip addr add 192.168.2.100/24 dev eth0 label eth0:1 ``` **方法二:永久配置**(引用[^2][^3]) - **CentOS**:创建子接口配置文件(如 `ifcfg-ens192:1`) ```ini DEVICE=ens192:1 IPADDR=192.168.2.100 NETMASK=255.255.255.0 ``` - **SUSE**:直接在 `ifcfg-eth0` 中添加 `IPADDR_1=192.168.2.100` --- #### **三、验证与调试** 1. **检查 IP 地址** ```bash ip addr show eth0 # 或 ifconfig eth0 ``` 2. **测试网络连通性** ```bash ping 8.8.8.8 # 测试外网 ping 192.168.1.1 # 测试网关 ``` 3. **查看路由表** ```bash ip route show # 或 route -n ``` --- #### **四、常见问题** | **问题现象** | **解决方案** | |---------------------------|-----------------------------------------------------------------------------| | 网络服务重启失败 | 检查配置文件语法错误(如 `BOOTPROTO` 拼写错误) | | IP 地址冲突 | 使用 `arping -I eth0 192.168.1.100` 检测冲突 | | 网关无法访问 | 验证网关配置:`ip route | grep default` | | DNS 解析失败 | 检查 `/etc/resolv.conf` 中的 DNS 服务器地址 | --- #### **五、高级配置** ##### **1.网卡路由策略**(引用[^1]) 若需特定网段流量走指定网卡(如 `eth0` 处理 `192.168.10.0/24`,`eth1` 处理 `172.16.100.0/24`): ```bash # 添加策略路由 ip route add 192.168.10.0/24 dev eth0 ip route add 172.16.100.0/24 dev eth1 ``` ##### **2. 默认网关设置** ```bash # 设置默认网关(通过 eth0) sudo ip route add default via 192.168.1.1 dev eth0 ``` --- ### **相关问题** 1. **如何为单个网卡配置多个 IP 地址?** (可通过创建子接口配置文件或使用 `ip addr add` 命令实现[^2][^4]) 2. **Linux网卡如何实现不同网段的路由隔离?** (使用 `ip route` 添加策略路由,指定目标网段对应的出口网卡[^1]) 3. **如何快速备份和恢复网络配置?** (备份 `/etc/sysconfig/network-scripts/` 或 `/etc/network/interfaces`,恢复时替换文件并重启服务) --- ### **引用说明** [^1]: 默认路由通过 `0.0.0.0/0` 表示,用于处理非本地网段流量(如互联网访问)[^1]。 [^2]: CentOS 中通过子接口配置文件(如 `ifcfg-ens192:1`)实现单网卡IP,需注意修改 `DEVICE` 和 `UUID`。 [^3]: SUSE 系统的网络配置文件路径为 `/etc/sysconfig/network/`,支持多 IP 直接配置[^3]。 [^4]: 使用 `ip addr add` 命令可动态添加临时 IP 地址,适合测试场景[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值