IP地址获取的两种方式
1、使用动态主机配置协议(DHCP)
DHCP:动态主机配置协议是一种网络协议,用于自动分配IP地址给设备。在DHCP模式下,计算机或其他设备会通过与DHCP服务器通信来获取一个可用的IP地址。DHCP服务器负责管理IP地址池,并将一个临时的、可变的IP地址分配给设备。每次设备连接到网络时,它都会向DHCP服务器发送请求,以获得一个新的IP地址。这种方式适合大多数家庭和办公网络中的设备。
2、静态IP地址的分配方式
静态IP地址:相比于DHCP,静态IP地址是手动配置给设备的固定IP地址。在这种情况下,网络管理员或用户需要为每个设备分配一个特定的IP地址,并手动输入网络设置中进行配置。这个IP地址会一直保持不变,无论设备连接到何种网络或重新启动。静态IP地址适用于需要远程访问设备、进行端口转发或网络服务配置的情况,例如服务器或网络设备。
总结一下就是DHCP自动获取IP地址,静态需要手动指定IP、子网掩码、网关和DNS服务器。其他不过多赘述。
Centos 7 修改 IP 地址
#如果你的linux有桌面,直接在设置里修改
#如果你的linux没有桌面
#查看本机IP地址用于ssh链接
if addr
#你会得到以下一条结果
#示例1
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:3d:71:f7 brd ff:ff:ff:ff:ff:ff
inet 192.168.182.131/24 brd 192.168.182.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::655b:c930:459:a592/64 scope link noprefixroute
valid_lft forever preferred_lft forever
#示例2
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:0f:61:41 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.220/24 brd 192.168.1.255 scope global noprefixroute ens192
valid_lft forever preferred_lft forever
inet6 240e:8c20:9898:3e21::3c3/128 scope global noprefixroute dynamic
valid_lft 29373sec preferred_lft 29373sec
inet6 fe80::226f:75a:7449:eccf/64 scope link noprefixroute
valid_lft forever preferred_lft forever
#请记住前面的ens xx,您的ipv4地址为192.168.xxx.xxx,如果有ipv6地址会显示在inet6中
#修改存储网络配置文件
cd /etc/sysconfig/network-scripts
ls -al
#查看ifcfg-ens33文件内容,你的可能是ifcfg-ens192等等其他
cat ifcfg-ens33
cat ifcfg-ens192
#你会得到大致以下一条结果
#这是一个DHCP的示例
[root@localhost network-scripts]# cat ifcfg-ens33 # 显示 ifcfg-ens33 文件的内容
TYPE="Ethernet" # 网络类型为以太网
PROXY_METHOD="none" # 不使用代理方法
BROWSER_ONLY="no" # 非仅限浏览器使用
BOOTPROTO="dhcp" # 使用 DHCP 引导协议
DEFROUTE="yes" # 默认路由开启
IPV4_FAILURE_FATAL="no" # IPv4 连接失败不致命
IPV6INIT="yes" # 启用 IPv6
IPV6_AUTOCONF="yes" # 自动配置 IPv6
IPV6_DEFROUTE="yes" # IPv6 默认路由开启
IPV6_FAILURE_FATAL="no" # IPv6 连接失败不致命
IPV6_ADDR_GEN_MODE="stable-privacy" # IPv6 地址生成模式为稳定隐私
NAME="ens33" # 接口名称为 ens33
UUID="551463f2-e091-491f-82cb-1106930d83a0" # 接口的 UUID
DEVICE="ens33" # 设备名称为 ens33
ONBOOT="yes" # 开机自启动
#这是一个静态IP的示例
[root@localhost network-scripts]# cat ifcfg-ens33 # 显示 ifcfg-ens33 文件的内容
TYPE="Ethernet" # 网络类型为以太网
PROXY_METHOD="none" # 不使用代理方法
BROWSER_ONLY="no" # 非仅限浏览器使用
BOOTPROTO="none" # 不使用引导协议
DEFROUTE="yes" # 默认路由开启
IPV4_FAILURE_FATAL="no" # IPv4 连接失败不致命
IPV6INIT="yes" # 启用 IPv6
IPV6_AUTOCONF="yes" # 自动配置 IPv6
IPV6_DEFROUTE="yes" # IPv6 默认路由开启
IPV6_FAILURE_FATAL="no" # IPv6 连接失败不致命
IPV6_ADDR_GEN_MODE="stable-privacy" # IPv6 地址生成模式为稳定隐私
NAME="ens33" # 接口名称为 ens33
UUID="20bbf4c5-799e-451b-82b4-731d8db47ee3" # 接口的 UUID
DEVICE="ens33" # 设备名称为 ens33
ONBOOT="yes" # 开机自启动
IPADDR="192.168.182.131" # IP 地址为 192.168.182.131
PREFIX="24" # 子网掩码前缀为 24
GATEWAY="192.168.182.129" # 网关地址为 192.168.182.129
DNS1="192.168.182.129" # DNS 服务器地址为 192.168.182.129
IPV6_PRIVACY="no" # 关闭 IPv6 隐私模式
#这也是一个静态IP的示例
[root@k8s-master1 network-scripts]# cat ifcfg-ens192 # 显示 ifcfg-ens192 文件的内容
TYPE="Ethernet" # 网络类型为以太网
PROXY_METHOD="none" # 不使用代理方法
BROWSER_ONLY="no" # 非仅限浏览器使用
BOOTPROTO="none" # 不使用引导协议
DEFROUTE="yes" # 默认路由开启
IPV4_FAILURE_FATAL="no" # IPv4 连接失败不致命
IPV6INIT="yes" # 启用 IPv6
IPV6_AUTOCONF="yes" # 自动配置 IPv6
IPV6_DEFROUTE="yes" # IPv6 默认路由开启
IPV6_FAILURE_FATAL="no" # IPv6 连接失败不致命
IPV6_ADDR_GEN_MODE="stable-privacy" # IPv6 地址生成模式为稳定隐私
NAME="ens192" # 接口名称为 ens192
UUID="a9d8a456-e532-4f34-9683-bc0d14db8887" # 接口的 UUID
DEVICE="ens192" # 设备名称为 ens192
ONBOOT="yes" # 开机自启动
IPADDR="192.168.1.220" # IP 地址为 192.168.1.220
PREFIX="24" # 子网掩码前缀为 24
GATEWAY="192.168.1.2" # 网关地址为 192.168.1.2
DNS1="192.168.1.2" # DNS 服务器地址为 192.168.1.2
IPV6_PRIVACY="no" # 关闭 IPv6 隐私模式
#修改ifcfg-ens33 / ifcfg-ens192文件
#如果你正在使用DHCP,可以编辑文件ifcfg-ens33、ifcfg-ens192文件
#你需要复制一下静态地址示例文件的文件内容,并修改以下内容
NAME="ensxxx" # 接口改为你的
UUID="a9d8a456-e532-4f34-9683-bc0d14db8887" # 接口的 UUID,填写你获取到的你的UUID
DEVICE="ensxxx" # 设备名称为 ensxxx
ONBOOT="yes" # 开机自启动
IPADDR="192.168.xxx.xxx" # IP 地址改为 192.168.xxx.xxx
PREFIX="24" # 子网掩码前缀为 24,即255.255.255.0
GATEWAY="192.168.xxx.xxx" # 网关地址为 192.168.xxx.xxx,一般为你的的主路由IP,如果你有旁路由,可设置旁路由的IP
DNS1="192.168.xxx.xxx" # DNS 服务器地址为 192.168.xxx.xxx,一般为你的的主路由IP,如果你有旁路由,可设置旁路由的IP
IPV6_PRIVACY="no" # 关闭 IPv6 隐私模式
#根据要求修改
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens"
UUID=""
DEVICE="ens"
ONBOOT="yes"
IPADDR=""
PREFIX=""
GATEWAY=""
DNS1=""
IPV6_PRIVACY="no"
#二选一
vi ifcfg-ens33
vi ifcfg-ens192
#按字母i键可对文件进行修改
#修改完后先按 ESC,再输入 :wq 即可保存退出,输入 :q! 不保存,强制退出
#你也可以使用以下命令直接替换/etc/sysconfig/network-scripts/ifcfg-ens33文件内容
cat > /etc/sysconfig/network-scripts/ifcfg-ens33 << EOF
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens"
UUID=""
DEVICE="ens"
ONBOOT="yes"
IPADDR=""
PREFIX=""
GATEWAY=""
DNS1=""
IPV6_PRIVACY="no"
EOF
#检查文件内容
cat /etc/sysconfig/network-scripts/ifcfg-ens33
cat /etc/sysconfig/network-scripts/ifcfg-ens192
#如果输出内容和你预想的一样则成功
#重启网络服务即可
service network restart
#再次查看IP地址
ip addr
#成功!