centos

CentOS中env网络配置步骤

小樊
40
2025-10-09 06:15:03
栏目: 智能运维

CentOS中env网络配置步骤(环境变量与网络配置结合)

一、环境变量在CentOS网络配置中的作用

环境变量是存储网络设置(如IP地址、子网掩码、网关等)的关键工具,可用于临时或永久传递配置参数,方便网络配置脚本的自动化执行。常见的网络相关环境变量包括:IPADDR(IP地址)、NETMASK(子网掩码)、GATEWAY(默认网关)、DNS1/DNS2(DNS服务器)、HOSTNAME(主机名)等。

二、临时设置环境变量(当前终端有效)

通过export命令可在当前终端会话中临时设置环境变量,关闭终端后失效。例如:

export IPADDR=192.168.1.100       # 设置IP地址
export NETMASK=255.255.255.0      # 设置子网掩码
export GATEWAY=192.168.1.1        # 设置默认网关
export DNS1=8.8.8.8               # 设置首选DNS服务器
export DNS2=8.8.4.4               # 设置备用DNS服务器

以上变量仅对当前终端有效,可用于临时测试或脚本中传递参数。

三、永久设置环境变量(系统重启后仍有效)

若需永久保存环境变量,需将其添加到系统或用户配置文件中:

  1. 用户级别(仅当前用户有效)
    编辑用户家目录下的.bashrc(或.bash_profile)文件:

    vi ~/.bashrc
    

    在文件末尾添加环境变量(每行一个):

    export IPADDR=192.168.1.100
    export NETMASK=255.255.255.0
    export GATEWAY=192.168.1.1
    export DNS1=8.8.8.8
    export DNS2=8.8.4.4
    

    保存后运行source ~/.bashrc使变量立即生效。

  2. 系统级别(所有用户有效)
    编辑系统级配置文件/etc/profile(或/etc/environment):

    vi /etc/profile
    

    在文件末尾添加相同的环境变量,保存后运行source /etc/profile生效。若修改/etc/environment,需重启系统才能使变量生效。

四、通过网络配置脚本使用环境变量(自动化配置)

可编写Shell脚本,利用环境变量自动生成网络接口配置文件(如ifcfg-ens33),实现网络配置的自动化。示例如下:

#!/bin/bash
# 从环境变量中读取网络配置(若未设置,可使用默认值)
IPADDR=${IPADDR:-192.168.1.100}       # 若未设置IPADDR,则使用默认值192.168.1.100
NETMASK=${NETMASK:-255.255.255.0}
GATEWAY=${GATEWAY:-192.168.1.1}
DNS1=${DNS1:-8.8.8.8}
DNS2=${DNS2:-8.8.4.4}

# 生成网络接口配置文件
cat <<EOF > /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=$IPADDR
NETMASK=$NETMASK
GATEWAY=$GATEWAY
DNS1=$DNS1
DNS2=$DNS2
EOF

# 重启网络服务使配置生效
systemctl restart network
echo "网络配置已完成,接口ens33已启用静态IP。"

说明

五、验证网络配置

无论使用临时还是永久环境变量,配置完成后需验证网络连通性:

  1. 检查网络接口IP地址是否生效:
    ip addr show ens33  # 替换为你的网络接口名称(如eth0)
    
    输出中应包含设置的IPADDR
  2. 测试网络连通性:
    ping www.baidu.com  # 测试外网连通性
    ping 192.168.1.1    # 测试网关连通性
    
    若能收到回复,说明配置成功。

注意事项

0
看了该问题的人还看了