用shell实现将动态ip修改为静态ip,静态ip修改为其它静态ip

(1) 将动态ip修改为静态ip的思路

① 修改ip之前,先备份ifcfg-eth0文件

②  进入网卡配置目录  /etc/sysconfig/network-scripts/ifcfg-eth0

③  修改BOOTPROTO=static

④  修改ONBOOT=yes

⑤  配置静态ip地址 IPADDR

⑥  配置DNS  NETMASK

⑦  配置网关  GATWAY

⑧  重启网卡验证配置,验证配置结果   service   network  restart

(2) 将静态ip修改为其它静态ip的思路

☆  先判断是否是静态ip   grep "dhcp" /etc/sysconfig/network-scripts/ifcfg-eth0/

if[$?  -ne   0]; then

sed -i `s/^IPADDR/#IPADDR/g` ifcfg-eth0

read  -p   "please Enter  ip:"IPADDR

echo "IPADDR="$IPADDR">>/etc/sysconfig/network-scripts/

fi

☆  重启网卡验证配置结果   service network  restart

代码示例:


#!/bin/bash

#2017年12月17日19:34:40

#by author daqi

#change ip  shell

NET_FILE="/etc/sysconfig/network-scripts"

NET_DIR="ifcfg-eth0"

cd $NET_FILE/

#change ip static for static:

grep "dhcp" $NET_FILE/ $NET_DIR

if [ $? -ne 0 ];then

sed -i s/^IPADDR/#IPADDR/g $NET_DIR

read -p "Please enter ip Address,example 192.168.0.11 ip": IPADDR

echo "IPADDR=$IPADDR">>$NET_FILE/$NET_DIR

service network restart

else

#change ip dhcp for static

sed -i s/dhcp/static/g $NET_DIR

sed -i s/ONBOOT=no/ONBOOT=yes/g $NET_DIR

read -p "Please enter ip Address,example 192.168.0.11 ip": IPADDR

cat>>$NET_FILE/$NET_DIR <<EOF

IPADDR=$IPADDR

NETMASK=255.255.255.0

GATWAY=192.168.2.1

EOF

service network restart

fi

时间: 2024-11-10 00:18:18

用shell实现将动态ip修改为静态ip,静态ip修改为其它静态ip的相关文章

#20 ifconfig、route、netstat、ip、ss命令详解与修改主机名与网卡配置文件

网络的结构: 硬件:计算机.互联设备.网络设备 软件:操作系统.协议.应用程序.数据库 网络的功能: 资源共享:目的 数据通信:手段 网络通信模型 ISO/OSI: 应用层 表示层 会话层 传输层 网络层 数据链路层 为物理层 TCP/IP: 应用层 传输层 互联网层 网络访问层 数据报文封装格式: 对等通信: 应用层:数据流进程封装: 传输层:数据段(TCP segment)或数据报(UDP data-prog): 最大的报文不能超过65535字节: 互联网层:数据包或IP数据报(ip pac

tomcat修改默认主页, 前段项目放到tomcat下,浏览器输入ip加端口后,直接到项目主页

1,将 项目 放到 tomcat 的webapps 文件夹下 2, 修改conf 下的 server.xml , 找到 <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> 在 Host 标签 下加入 <Context docBase="project/myProject" path=&q

修改本地连接的脚本包括修改备用dns的方法

echo off cls title 设置IP echo 正在设置IP地址,请稍候-- netsh interface ip set address "本地连接" static 192.168.218.169 255.255.255.0 192.168.218.254 1 echo 正在更改DNS设置,请稍候-- echo 正在更改DNS设置,请稍候-- netsh interface ip set dns "本地连接" static 192.168.12.128

少年,想学带修改主席树吗 | BZOJ1901 带修改区间第k小

少年,想学带修改主席树吗 | BZOJ1901 带修改区间第k小 有一道题(BZOJ 1901)是这样的:n个数,m个询问,询问有两种:修改某个数/询问区间第k小. 不带修改的区间第k小用主席树很好写,不会的同学可以看一下这个. 加上修改怎么做呢?我们可以用数学老师成天讲的类比思想: 可以发现,不修改的区间k小问题中,每加入一个原序列中的数,对应的主席树在上一个的基础上进行修改,而查询的时候用右端点主席树减去左端点左边的主席树.这样的操作就像是维护前缀和:每次加入一个元素的时候,sum[i] =

【docker】【Gitlab】gitlab中clone项目时,IP地址是一串数字(内网Gitlab的IP地址不正确)的问题解决

首次在内网搭建Gitlab环境,在成功后在Gitlab上新建了一个项目. 然而在IDEA上clone项目时发现,项目地址如下: git@0096ce63c43f:root/jump.git 或者这样 http://0096ce63c43f/root/jump.git 然而在setting中看到的IP地址却是虚拟机的IP地址: 但是此处是无法改变的IP地址,也就是我在IDEA进行clone项目时,还是这一串: 而这样进行Clone操作,这种IP是识别不了的 OK,问题描述完了,现在来说说解决方法:

《TCP/IP详解卷1:协议》第3章 IP:网际协议(1)-读书笔记

章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 1.引言 IP是TCP/IP协议族中最核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输.IP提供不可靠.无连接的数据报传送服务. (1)不可靠 它不能保证IP数据报能成功地到达目的地.IP仅提供最好的传输服务.如果发生某种错误,如某个路由器暂时用完了缓冲区,IP有一个简单的错误处理算法:丢弃该数据报,然后发送ICMP消息报给信源端.

Method of offloading iSCSI TCP/IP processing from a host processing unit, and related iSCSI TCP/IP offload engine

A method of offloading, from a host data processing unit (205), iSCSI TCP/IP processing of data streams coming through at least one TCP/IP connection (3071?,307?2?,307?3), and a related iSCSI TCP/IP Offload Engine (TOE). The method including: providi

《TCP/IP详解卷1:协议》——第3章 IP:网际协议(转载)

1.引言 IP是TCP/IP协议族中最核心的协议.所有的TCP.UDP.ICMP及IGMP数据都以IP数据报格式传输.IP提供不可靠.无连接的数据报传送服务. (1)不可靠 它不能保证IP数据报能成功地到达目的地.IP仅提供最好的传输服务.如果发生某种错误,如某个路由器暂时用完了缓冲区,IP有一个简单的错误处理算法:丢弃该数据报,然后发送ICMP消息报给信源端.任何要求的可靠性必须由上层来提供(如TCP). (2)无连接 IP并不维护任何关于后续数据报的状态信息.每个数据报的处理是相互独立的.即

tcp/ip 卷一 读书笔记(3)为什么既要有IP地址又要有MAC地址

网络层 首先明确一点,并不是所有的网络之间传输数据都需要mac地址和ip地址,比如说点对点线路之间的通信就没有MAC地址,网络层使用ipx协议时就没有ip地址,但是在当前的主流网络中,我们都使用ip地址和mac地址 既然mac地址唯一,为什么还要有IP地址? 之前我们提到,mac地址是唯一的,那理论上,在任何两个设备之间,我应该都可以通过mac地址发送数据,为什么还需要ip地址? mac地址就好像个人的身份证号,人的身份证号和人户口所在的城市,出生的日期有关,但是和人所在的位置没有关系,人是会移

C#获得当前页面客户端的IP 用于监测获取某个页面上用户的客户端真实IP地址

C#获得当前页面客户端的IP 用于监测获取某个页面上用户的客户端真实IP地址  1 /// <summary> 2 /// 获得当前页面客户端的IP 3 /// </summary> 4 /// <returns>当前页面客户端的IP</returns> 5 public static string GetIP() 6 { 7 8 9 string result = String.Empty; 10 11 result = HttpContext.Curre