linux中要添加多个无规律的ip,应该怎么写shell脚本?

linux中要添加多个无规律的ip,应该怎么写shell脚本?,第1张

你所说的添加是要怎么添加?

将IP地址写入一个文本中,使用循环就可以实现。

for IP in `cat file`

do

    ... $IP 

done

file 为IP地址集合保存的文件

进VMware之前,右键,用管理员模式打开,后面需要管理员权限,先不要开虚拟机

按照①②配置 把③的子网IP记住 ,后面要用到。

然后点击④进入NAT设置。

①中配置 默认网关 ,其中前三大位要与前面记住的子网IP前面相同,后面默认会配置2,也可以自定义。然后该默认网关192.168.248.2要记住,后面需要用到。

②照做就行

③按确定返回上图,再点击下栏确定就可以保存虚拟网络编辑器的配置。

①选择IPv4的项目,②然后进入属性。

默认是自动获得IP地址,勾选“使用下面的IP地址”自定义IP

①配置IP地址,前三位同虚拟网络编辑器配置的子网IP前三位相同,最后一位的1自定义,这里我设置为1

②配完①一般子网掩码会自动填好,没自动补上就填上虚拟网络编辑器里的子网掩码。

③默认网关就是干菜虚拟网络编辑器里面NAT设置里的那个默认网关。

④确定保存,然后再确定就保存成功了。

管理员模式进入VMware,选择要配置的那台虚拟机,进入网络适配器

如图配置即可。

打开虚拟机,建议用root用户登录,方便后面对ifcfg-eth0文件进行编辑。

打开terminal终端,输入指令: vim /etc/sysconfig/network-scripts/ifcfg-eth0

这是使用终端vim的方式修改,不会vim *** 作的自行百度,或者根据上面的路劲去找ifcfg-eth0文件打开进行修改。

下面的配置建议对字段进行复制,防止配错。

然后esc : wq保存

退出后,终端输入指令: service network restart 重启网络

然后 ping baidu.com,看能不能ping通,能说明能上网。

输入指令:ifconfig,查看刚才自定义的静态ip地址是否配置成功。

可以先本地cmd中ping 一下服务器

如图能ping通,接下来进入XShell,将该ip连接就可以了,至此虚拟机静态IP配置结束。

#!/bin/bash

################################变量定义################################

nameDevice=eth0

ipAdddress=192.168.4.110

prefix=255.255.255.0

netMask=255.255.255.0

gateway=192.168.4.1

dns1=8.8.8.8

dns2=192.168.4.0

################################函数模块################################

##设置NetworkManager服务

function SetNetworkManagerDisable(){

  systemctl stop NetworkManager &&systemctl disable NetworkManager &&echo "NetworkManager is stop and disable" &&return 0 || return 1

}

##设置NetworkManager服务

function SetNetworkEnable(){

  systemctl restart network &&systemctl enable network &&echo "network is start and enable" &&return 0 || return 1

}

##查看服务器第一个网卡名称

function FindFirstNICName(){

  ifconfig|head -n 1|cut -d \: -f 1 &&[ $? == 0 ] &&nameDevice=`ifconfig|head -n 1|cut -d \: -f 1` &&return 0 || return 1

}

##设置服务器网卡IP地址

function SetNICFile(){

  cat >/etc/sysconfig/network-scripts/ifcfg-$nameDevice <<EOF

TYPE="Ethernet"

BOOTPROTO="none"

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

NAME=$nameDevice

DEVICE=$nameDevice

ONBOOT=yes

IPADDR=$ipAdddress

PREFIX=$prefix

NETMASK=$netMask

GATEWAY=$gateway

DNS1=$dns1

DNS2=$dns2

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_PRIVACY=no

EOF

}

##消除变量

function UnsetVariate(){

  unset nameDevice

  unset ipAdddress

  unset prefix

  unset netMask

  unset gateway

  unset dns1

  unset dns2

}

################################程序流程################################

##设置网络服务为network

FindFirstNICName

SetNICFile

SetNetworkEnable

SetNetworkManagerDisable

UnsetVariate


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7624058.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-07
下一篇2023-04-07

发表评论

登录后才能评论

评论列表(0条)

    保存