网络实验:ip地址配置是什么(网络实验:ip地址配置不可用),本文通过数据整理汇集了网络实验:ip地址配置是什么(网络实验:ip地址配置不可用)相关信息,下面一起看看。

配置主机IP地址和连接网络是开发工程师和网络管理员的必备技能。

本节提供了四个典型的实验场景来解释为Linux主机配置IP地址的关键步骤。实践是最好的学习方法。请自行做本节实验,有助于理解IP协议、路由原理、子网掩码等核心知识点。

这是一种典型的LAN拓扑,其中所有主机都直接连接到同一个以太网:

只要为该LAN分配了一个网段(如192.168.1.0/24 ),并为每台主机配置了适当的IP地址,主机就可以通过IP协议进行通信。

实验环境也是通过docker容器提供的。只需执行这个docker命令,一键启动它:

docker run-name switch-la b-RM-it-privileged-cap-add=net _ admin-cap-add=sys _ admin-v/data-hswitchfasionchan/net box:0.3 bash/script/switch-lab . sh我们先来观察一下每台主机的网络信息,

root @ ant[~]IP addr show eth 06:eth 0 @ if5:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc no queue state UP group default qlen 1000 link/ether 40:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff link-netnsid 0 root @ ant[~]IP route root @ ant[~]root @ bee[~]IP addr show eth 08:eth 0 @ if7:BROADCAST,MULTICAST,UP,UP LOWER _ UP MTU 1500 qdisc no queue state UP group默认qlen 1000 link/ether 40:cc:cc:cc:cc:cc:brd ff:ff:ff:ff link-net nsid 0 root @蝉[ ~ ]Ip router root @蝉[~]我们先为主机ant配置Ip地址192.168.1.1/24:

root @ ant[~]IP addr add 192 . 168 . 1 . 1/24 dev eth 0/24与拓扑网段一致,表示LAN网络号为24位,其余8位为主机号。

执行ip命令检查网卡信息,可以看到IP地址已经生效:

root @ ant[~]IP addr show eth 06:eth 0 @ if5:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc no queue state UP group default qlen 1000 link/ether 40:aa:aa:aa:aa:aa brd ff:ff:ff:ff:ff link-netnsid 0 inet 192 . 168 . 1 . 1/24 Scope Global eth 0 valid _ LFT永远首选_ LFT永远另外我们发现系统自动添加了一条路由规则给

root @ ant[~]IP route 192.168.1.0/24 dev eth0 proto kernel scope link src 192 . 168 . 1 . 1由于我们为eth0网卡配置了网段192.168.1.0/24的地址,这就意味着eth 0直接连接到网络192 . 168 . 1 . 0/。因此,所有目的地为192.168.1.0/24网段的IP数据包都可以通过eth0网络发送到目标主机,eth 0网络是该路由规则的起源。

类似地,我们可以为主机bee配置IP地址:

Root @ Bee[~]IP addr add 192 . 168 . 1 . 2/24 dev eth 0 Root @ Bee[~]IP addr show eth 08:eth 0 @ if7:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc no queue state UP group default qlen 1000 Link/ether 40:bb:bb:bb:bb:bb brd ff:ff:ff:ff:ff Link-netnsid 0 inet 192 . 168 . 1 . 2/24Ping host bee on我们的host ant,并且网络已经连接:

root @ ant[~]ping 192 . 168 . 1 . 2 ping 192 . 168 . 1 . 2(192 . 168 . 1 . 2)56(84)字节数据. 64字节来自192 . 168 . 1 . 2:ICMP _ seq=1 TTL=64 time=0.122 ms64字节来自192 . 168 . 1 . 2:ICMP _ seq=2 TTL=64 time=0.109 ms64字节当局域网中的所有主机都配置好后,整个网络就连接起来了。

两根网线用以太网卡直接连到两台主机上,只需要一根网线就可以连接起来进行通信。下图就是一个例子:

主机ant和bee通过网线连接,它们形成了一个只有两台主机连接的迷你以太网。我们可以分配最小的网段192.168.1.0/30,除了网络地址和广播地址,只有两个主机地址可以分配。

实验环境由docker容器提供。只需执行以下docker命令,一键启动它:

docker Run-name cable-lab-RM-it-privileged-cap-add=net _ admin-cap-add=sys _ admin-v/data-h switch fashion chan/netbox:0.3 bash/script/cable-lab . sh一开始,两台主机都没有配置任何

root @ ant[~]IP addr show eth 05:eth 0 @ if4:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc No Queue State UP组默认qlen 1000 Link/Ether 16:8a:1f:F3:54:0a brd FF:FF:FF:FF:FF Link-netnsid 1 root @ bee[~]IP addr show eth 04:eth 0 @ if5:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc No Queue State

root @ ant[~]IP addr add 192 . 168 . 1 . 1/30 dev eth 0 root @ ant[~]IP addr show eth 05:eth 0 @ if4:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc no queue state UP group default qlen 1000 link/ether 16:8a:1f:F3:54:0a brd ff:ff:ff:ff:ff:ff link-netnsid 1 inet 192 . 168 . 1 . 1/et LOWER _ UP MTU 1500 qdisc no queue state UP group default qlen 1000 Link/ether 32:65:21:D3:01:2f brd ff:ff:ff:ff:ff Link-netnsid 0 inet 192 . 168 . 1 . 2/30 Scope Global eth 0 valid _ LFT永远首选_ LFT永远Root @ bee[~]IP Route 192 . 168 . 1 . 0/30 deveth 0 proto kernel Scope Link src 192.168

配置地址后,两台主机可以相互ping通:

root @ ant[~]ping 192 . 168 . 1 . 2 ping 192 . 168 . 1 . 2(192 . 168 . 1 . 2)56(84)字节数据. 64字节来自192 . 168 . 1 . 2:ICMP _ seq=1 TTL=64 time=0.035 ms64字节来自192 . 168 . 1 . 2:ICMP _ seq=2 TTL=64 time=0.305 ms64字节

双机网线直连在双机直连的场景下,我们甚至不需要分配一个网段,只需要在设置IP的同时记录对等地址即可。两台主机的IP甚至可以位于不同的网段。理论上,任何IP都可以是:

我们重新执行下面的命令来启动一个新的实验环境来演示场景。让我们首先配置主机ant:

root @ ant[~]IP addr add 192.168.1.1 dev eth0 peer 10.0.1.1该命令为eth 0网络配置地址192 . 168 . 1 . 1,并告知系统peer bee的地址为10 . 0 . 1 . 1。

配置完成后,我们可以看到网卡上的地址信息和系统自动添加的路由规则:

root @ ant[~]IP addr show eth 05:eth 0 @ if4:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 q disc no queue state UP group default qlen 1000 link/ether 16:8a:1f:F3:54:0a brd ff:ff:ff:ff:ff link-netnsid 1 inet 192 . 168 . 1 . 1 . 1/2 scope global eth 0 valid _ lftforeverfirepreferred _ lftforeroroot

类似地,我们为主机bee配置地址10.0.1.1,并告诉它对等ant的地址是192.168.1.1:

root @ bee[~]IP addr add 10 . 0 . 1 . 1 dev eth 0 peer 192 . 168 . 1 . 1 root @ bee[~]IP addr show eth 04:eth 0 @ if5:BROADCAST,MULTICAST,UP,LOWER _ UP MTU 1500 qdisc no queue state UP group default qlen 1000 link/eth 32:65:21:D3:01:2f brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 10

root @ ant[~]ping 10 . 0 . 1 . 1 ping 10 . 0 . 1 . 1(10 . 0 . 1 . 1)56(84)字节的数据. 64字节来自10 . 0 . 1 . 1:ICMP _ seq=1 TTL=64 time=0.156 ms64字节来自10 . 0 . 1 . 1:ICMP _ seq=2 TTL=64 time=0.109 ms64字节来自10.0.1.1: icmp_seq=1

root @ ant[~]ping 10 . 0 . 1 . 2 ping:connect:网络不可达主机蜂类似。

下图是一个典型的家庭局域网拓扑。路由器通过ADSL接入互联网,局域网内的网络设备通过路由器接入互联网。那么,对于一台连接到这个局域网的主机,如何设置IP地址才能上网呢?

现在以上图的PC为例进行一个实验。执行以下docker命令,通过一次点击启动实验环境,并进入PC命令行:

docker run-name host-GW-lab-RM-it-privileged-cap-add=net _ admin-cap-add=sys _ admin-v/data-h switch fashion chan/net box:0.3 bash/script/host-GW-lab . shpc via eth 0

root @ net box[~]IP addr show eth 06:eth 0 @ if5:BROADCAST,MULTICAST,UP,Lower _ UP MTU 1500 qdisc no queue state UP group default qlen 1000 link/ether 5a:ff:7e:28:81:BC brd ff:ff:ff:ff:ff link-netnsid 0因此,此时PC无法ping局域网中的其他设备,如路由;更不用说访问公共网络服务了:

root @ netbox[~]ping 192 . 168 . 1 . 1 ping:connect:网络不可达root @ netbox[~]ping 223.5.5 ping:connect:网络不可达223 . 5 . 5是公共IP,运行阿里提供的公共DNS服务。

首先,我们执行ip命令为eth0网络配置一个LAN IP地址。如果不出意外,PC可以访问局域网中的其他设备:

root @ netbox[~]IP addr add 192 . 168 . 1 . 2/24 dev eth 0 root @ netbox[~]ping 192 . 168 . 1 . 1 ping 192 . 168 . 1 . 1(192 . 168 . 1 . 1)56(84)字节数据. 64字节来自192 . 168 . 1 . 1:ICMP _ seq=1 TTL=64 time=0.265 ms64字节来自192.11本实验可以根据拓扑图中的标签进行配置。

然后,IP地址配置好之后,可以访问公网吗?

root @ netbox[~]ping 223.5.5.5 ping:connect:网络不可达显然不是。当我们ping公共网络地址时,ping命令会报告网络不可达错误。这是为什么呢?

PC路由表起初是空的。在我们为eth0配置了IP地址后,系统自动添加了一条访问LAN的直接路由:

root @ netbox[~]IP route 192.168.1.0/24 dev eth0 proto kernel scope link src 192 . 168 . 1 . 2该路由意味着发往网段192 . 168 . 1 . 0/24的IP包可以通过eth 0网卡直接发送到目标设备。因为223.5.5.5不在这个网段中,所以系统不知道如何处理发送给它的IP数据包,这就是ping命令出错的原因。

为了访问互联网,我们为PC添加了一条默认路由,路由器192.168.1.1是下一跳:

root @ netbox[~]ip route add default via 192.168.1.1 root @ netbox[~]IP routed default via 192 . 168 . 1 . 1 dev eth 0192 . 168 . 1 . 0/2 deveth 0 proto kernel Scope Link src 192 . 168 . 1 . 2使用此默认路由,如果一个IP包错过了任何其他路由规则,则默认发送到路由器192 . 168 . 1 . 1,由它负责转发。这样,目的地为223.5.5.5的IP数据包将被发送到路由器192.168.1.1,路由器会将数据包转发到互联网。

使用默认路由,我们可以ping通公共IP 223.5.5.5:

root @ netbox[~]ping 223 . 5 . 5 . 5 ping 223.5.5.5(223.5.5.5)56(84)字节数据. 64字节来自223 . 5 . 5 . 5:icmp _ seq=1 TTL=36 time=20.5 ms64字节来自223 . 5 . 5 . 5:icmp _ seq=2 TTL=36 time=21.8 ms64字节来自223 . 5 . 5 . 5:I Cmp _ seq=3 TTL=36 time=16所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请一键举报。

更多网络实验:ip地址配置是什么(网络实验:ip地址配置不可用)相关信息请关注本站,本文仅仅做为展示!