Linux 系统修改IP地址的脚本

/

目前 linux 操作系统的发行版本比较多样,所以在修改网络地址有些区别,因此写了如下脚本,统一执行配置。

  1. #!/bin/bash
  2. #
  3. #********************************************************************
  4. #Author: wwtou
  5. #Date: 2025-04-20
  6. #FileName: modify_hosts_ip.sh
  7. #Description: The test script for OS ip address and run for root
  8. #Copyright (C): 2020 All rights reserved
  9. #********************************************************************
  10. # 定义网络的相关变量:
  11. NET_INT=$(ip a | awk -F ":" 'NR==7{print $2}')
  12. #SUBNET_IP="10.15.0.22/24"
  13. SUBNET_IP="$1"
  14. GW="$2"
  15. DNS1="$3"
  16. DNS2="$4"
  17. HOST_NAME="$5"
  18. # 判断输入参数个数:
  19. if [ $# -ne 5 ]; then
  20. echo "Usage sh $0 ip/mask gateway dns1 dns2 hostname: (1.1.1.1/24 1.1.1.254 114.114.114.114 8.8.8.8 node8)"
  21. exit 1
  22. fi
  23. # 修改主机名:
  24. hostnamectl set-hostname ${HOST_NAME}
  25. # 现在将 IP、GW 和 DNS 添加到接口:
  26. nmcli connection modify ${NET_INT} ipv4.addresses ${SUBNET_IP} ipv4.method manual
  27. nmcli connection modify ${NET_INT} ipv4.gateway ${GW}
  28. nmcli connection modify ${NET_INT} ipv4.dns ${DNS1} +ipv4.dns ${DNS2}
  29. nmcli connection down ${NET_INT};nmcli connection up ${NET_INT}
  30. nmcli connection reload ${NET_INT}
  31. #reboot
  32. # 验证创建:
  33. #nmcli connection show
  34. # 启动网络:
  35. #nmcli connection down ${NET_INT};nmcli connection up ${NET_INT}
  36. # 验证网络是否正在运行:
  37. #ip a | grep ${NET_INT}
  38. #nmcli connection show ${NET_INT}

执行以上脚本配置IP地址、主机名、DNS、网关。

  1. # sh modify_hosts_ip.sh
  2. # ip add show

转载请注明作者和出处,并添加本页链接。
原文链接: //www.wwtou.com/JOAK7UI.html