CentOS7配置静态IP

查看网络接口使用情况

查看当前服务器的网络接口使用情况

nmcli device status

 

在 Linux 系统中,特别是使用 Docker 等容器化工具时,可能会看到许多网络接口。这些接口可能包括:

  1. 物理网络接口:如 p7p1p2p1
  2. Docker 虚拟网络接口:如 docker0 和许多以 veth 开头的接口。
  3. 本地回环接口:如 lo

网络接口lo

在 Linux 系统中,lo 是指本地回环接口(loopback interface)。它的主要功能是在本地机器上进行网络通信测试,或在本地计算机上运行网络应用程序时用于环回通信。lo 接口的 IP 地址通常是 127.0.0.1,也被称为 localhost。这是一个特殊的网络接口,它不会与外部网络通信。

以下是一些关于 lo 接口的详细信息:

  1. 功能lo 接口用于本地通信,不会通过任何物理网络接口发送数据。它的主要用途包括本地测试和调试网络应用程序。

  2. 配置lo 接口通常默认配置,无需手动设置。它在大多数 Linux 发行版中默认启用,并且配置为 127.0.0.1/8

  3. 重要性:许多系统服务和应用程序依赖于 lo 接口来进行本地通信,因此它对于系统的正常运行非常重要。

p7p1与p2p1区别

p7p1p2p1 都是你的物理以太网接口,它们之间的主要区别在于它们所连接的物理网络端口不同。你可以选择其中一个接口来配置静态 IP 地址,具体选择哪个接口取决于你希望哪个网络接口用于网络通信。

网络接口的类型

在 CentOS 7 中配置网络接口时,TYPE 字段用于指定网络接口的类型。以下是一些常见的 TYPE 类型:

Ethernet:标准的以太网接口,这是物理网络接口最常见的类型。

TYPE=Ethernet

Bridge:网桥接口,用于将多个网络接口连接在一起,形成一个逻辑网络。

TYPE=Bridge

Bond:绑定接口,用于将多个网络接口绑定在一起,提高带宽或提供冗余。

TYPE=Bond

VLAN:虚拟局域网接口,用于创建基于标签的虚拟局域网。

TYPE=Vlan

Team:类似于绑定接口,用于将多个网络接口聚合在一起,但使用不同的机制提供负载均衡和故障转移。

TYPE=Team

Wireless:无线网络接口,通常用于 Wi-Fi 连接。

TYPE=Wireless

InfiniBand:用于高速网络接口,通常在高性能计算环境中使用。

TYPE=InfiniBand

PPP:点对点协议接口,用于点对点网络连接。

TYPE=PPP

示例

配置以太网接口的示例:
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
配置网桥接口的示例:
TYPE=Bridge
BOOTPROTO=none
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.1.200
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
配置绑定接口的示例:
TYPE=Bond
BOOTPROTO=none
NAME=bond0
DEVICE=bond0
ONBOOT=yes
BONDING_OPTS="mode=active-backup miimon=100"
IPADDR=192.168.1.150
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
配置VLAN接口的示例:
TYPE=Vlan
BOOTPROTO=none
NAME=vlan10
DEVICE=eth0.10
ONBOOT=yes
VLAN=yes
IPADDR=192.168.10.100
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=8.8.8.8
DNS2=8.8.4.4

 进入网络配置目录

cd /etc/sysconfig/network-scripts/

编辑网络配置文件

网络配置文件通常位于 /etc/sysconfig/network-scripts/ 目录下,以 ifcfg- 开头,后面跟着网络接口的名称。我的服务器网络接口名称是 p7p1,则配置文件为 ifcfg-p7p1。使用文本编辑器打开该文件:

sudo vi /etc/sysconfig/network-scripts/ifcfg-p7p1

修改的配置内容:

# 告诉系统这是一个标准的以太网接口
TYPE=Ethernet
# 配置为静态IP地址,因此不使用DHCP或其他协议来动态获取IP地址
BOOTPROTO=none
# 定义这个配置文件所对应的网络接口名称
NAME=p7p1
# 定义实际的网络接口设备
DEVICE=p7p1
# 确保系统启动时自动激活并配置这个网络接口
ONBOOT=yes
# 设置此网络接口的IP, 静态固定ip
IPADDR=静态IP
# 设置子网掩码
NETMASK=子网掩码
# 设置网关
GATEWAY=网关
# 设置DNS服务器
DNS1=DNS服务器
# 可选的第二DNS服务器,非必要设置
DNS2=DNS服务器

查看当前服务器的IP、子网掩码、网关、DNS

查看 IP 地址和子网掩码

ip addr show p7p1

  • inet:表示 IPv4 地址。
  • 172.16.3.249:这是分配给该接口的 IPv4 地址。
  • /22:表示子网掩码的前缀长度。/22 对应的子网掩码是 255.255.252.0。这意味着网络部分占据了 22 位,剩下的 10 位用于主机地址。

 子网掩码的前缀长度(例如 /22)表示了子网掩码中网络部分的位数。了解如何计算这个长度是很重要的,因为它决定了一个网络中有多少个 IP 地址可以分配给主机。

 计算方法
子网掩码的二进制表示

子网掩码是由一系列连续的 1 后跟一系列连续的 0 组成。例如,/22 对应的子网掩码是 255.255.252.0。将其转换为二进制表示是:

11111111.11111111.11111100.00000000
前缀长度的定义

/22 表示前面有 22 位是 1,后面是 0。这意味着前 22 位是网络部分,剩下的 32 - 22 = 10 位是主机部分。

计算可用的 IP 地址
  • 主机位数:剩余的 10 位是用于主机地址。
  • 可用主机数:主机位数为 n 时,可用的主机数是 2n−22^n - 22n−2,其中减去 2 是因为其中一个地址用作网络地址,另一个用作广播地址。

对于 /22 子网,主机位数是 10 位, 因此,/22 子网可以分配 1022 个 IP 地址给主机使用。

2^10 - 2 = 1024 - 2 = 1022
总结:

/22 子网掩码表示网络部分占据了 22 位,剩下的 10 位用于主机地址。通过这种方式计算,可以确定一个特定子网掩码可以支持的 IP 地址数量和其分配给主机的能力。

查看默认网关

ip route

 其中,default via 172.16.1.1 表示默认网关是 172.16.1.1

查看 DNS 服务器

DNS 服务器信息通常存储在 /etc/resolv.conf 文件中,可以使用 cat 命令查看

cat /etc/resolv.conf

其中,nameserver 行表示配置的 DNS 服务器。

重启网络服务

sudo systemctl restart network

验证配置

可以再次使用 ip addrnmcli 命令来验证新的 IP 配置是否生效:

ip addr show p7p1

  • 16
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值