Linux系统中,修改IP地址、DNS和网关

  • Post author:
  • Post category:linux
  • Post comments:0评论

在Linux系统中,修改IP地址、DNS和网关通常是在网络接口配置文件中进行的。具体操作取决于你使用的Linux发行版。以下是一些常见的方法,以CentOS/RHEL和Ubuntu为例:

CentOS/RHEL 7及更高版本
使用nmcli或直接编辑/etc/sysconfig/network-scripts/ifcfg-ethX文件。

使用nmcli:

#!/bin/bash

# 设置变量
INTERFACE="eth0"
IP_ADDRESS="192.168.1.10"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS_SERVERS="192.168.1.1 8.8.8.8"

# 修改IP地址和子网掩码
nmcli connection modify $INTERFACE ipv4.addresses $IP_ADDRESS/$NETMASK

# 修改网关
nmcli connection modify $INTERFACE ipv4.gateway $GATEWAY

# 修改DNS服务器
nmcli connection modify $INTERFACE ipv4.dns $DNS_SERVERS

# 重启网络服务使更改生效
nmcli connection down $INTERFACE
nmcli connection up $INTERFACE

直接编辑配置文件:

#!/bin/bash

# 设置变量
INTERFACE="eth0"
IP_ADDRESS="192.168.1.10"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS_SERVERS="192.168.1.1 8.8.8.8"

# 编辑配置文件
sed -i "s/^IPADDR=.*/IPADDR=$IP_ADDRESS/" /etc/sysconfig/network-scripts/ifcfg-$INTERFACE
sed -i "s/^PREFIX=.*/PREFIX=$(echo $NETMASK | awk '{print 32 - (length($0) - length(sub(/./,"",$0))) * 8}')/" /etc/sysconfig/network-scripts/ifcfg-$INTERFACE
sed -i "s/^GATEWAY=.*/GATEWAY=$GATEWAY/" /etc/sysconfig/network-scripts/ifcfg-$INTERFACE

# 添加DNS服务器到resolv.conf
echo "nameserver $DNS_SERVERS" > /etc/resolv.conf

# 重启网络服务使更改生效
service network restart

Ubuntu
使用netplan工具。

创建或编辑/etc/netplan/01-netcfg.yaml:

#!/bin/bash

# 设置变量
INTERFACE="eth0"
IP_ADDRESS="192.168.1.10"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS_SERVERS="192.168.1.1 8.8.8.8"

# 创建或编辑netplan配置文件
cat <<EOF > /etc/netplan/01-netcfg.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    $INTERFACE:
      dhcp4: no
      addresses: [$IP_ADDRESS/$(echo $NETMASK | awk '{print 32 - (length($0) - length(sub(/./,"",$0))) * 8}') ]
      gateway4: $GATEWAY
      nameservers:
        addresses: [$DNS_SERVERS]
EOF

# 应用netplan配置
netplan apply
文章作者: 张拓
文章链接: http://www.xssl.online/linux%e7%b3%bb%e7%bb%9f%e4%b8%ad%ef%bc%8c%e4%bf%ae%e6%94%b9ip%e5%9c%b0%e5%9d%80%e3%80%81dns%e5%92%8c%e7%bd%91%e5%85%b3/
版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议。转载请注明来自 张拓的博客
浏览次数: 340

张拓

陕西西安蓝田张拓QQ1070410059。一生所求不过“心安”二字。 然,尘世多纷扰。

发表回复