网段划分 & 特殊网段(localhost&0.0.0.0&1.1.1.1&127.0.0.1)

一般情况下,不同网段是说:不在同一局域网的IP地址段,如:192.168.111.0/24是一个网段,192.168.2.0/24是另一个网段,两个网段间要互访的话,一般有一台叫路由器的设备负责解析.

不同网段就是使用了不同类型的IP地址或网络号!比如A类地址58.61.70.2和B类地址127.56.21.11就是不在一个网段,又比如同一类IP地址也可以不在同一网段,比如C类地址192.168.1.1和C类地址192.168.2.1就不在同一网段.这主要是看他们的网络位!!
不同网段之间的计算机是通过交换机或路由器连接的!


IPv4的地址由四段数字组成(以后将扩充更改),常分为三类IP:
A类:0.0.0.0   到  127.255.255.255
B类:128.0.0.0 到  191.255.255.255
C类:192.0.0.0 到  223.255.255.255
A   255.0.0.0     11111111.00000000.00000000.00000000
B   255.255.0.0   11111111.11111111.00000000.00000000
C   255.255.255.0 11111111.11111111.11111111.00000000

A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万多台电脑   2^(8*3) -- 0的个数
B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万台电脑
C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254台电脑
如IP:188.188.0.111,188.188.5.222,子网掩码都设为255.255.254.0,在同一网段吗?
先将这些转换成二进制
188.188.0.111 10111100.10111100.00000000.01101111
188.188.5.222 10111100.10111100.00000101.11011110
255.255.254.0 11111111.11111111.11111110.00000000
分别AND,得
10111100.10111100.00000000.00000000
10111100.10111100.00000100.00000000
网络标识不一样,即不在同一网段。
子网掩码决定的是一个子网的计算机数目,计算机公式是2的m次方,其中,我们可以把m看作后面0的个数。如255.255.255.0转换成二进制,那就是11111111.11111111.11111111.00000000,后面有8个0,那m就是8,255.255.255.0这个子网掩码可以容纳2的8次方(台)电脑,也就是256台,但是有两个IP是不能用的,那就是最后一段不能为0和255,减去这两台,就是254台.



ping127.0.0.1和ping本机的过程是不一样的
ip输出函数先检查地址是不是环回地址
1.如果是环回地址 直接交给环回驱动程序处理 返回ip输入函数
2.如果不是环回地址 检查是不是广播或者多播地址
3.如果不是广播或者多播地址 才检查是不是本机地址 如果是本机地址 则交给环回驱动程序处理,环回驱动程序返回给ip输入函数
从上面可以看出 ping127.0.0.1 数据包是不经过网卡的 ping本机则是需要经过网卡的

127.0.0.1是回送地址,指本地机,一般用来测试使用。回送地址(127.x.x.x)是本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址,主要用于网络软件测试以及本地机进程间通信,无论什么程序,一旦使用回送地址发送数据,协议软件立即返回,不进行任何网络传输。
收到127.0.0.1的响应表示主机的ip配置正确。此响应来自网络层。但是此响应并不代表地址、掩码、和网关配置正确。它也不能说明有关网络协议族下层的任何状态。此方法只是测试网络层的ip联通性。
在进行网络编程时,会将服务器的IP地址设置为127.0.0.1。然后绑定端口,开始监听。

IP地址中的A类地址127.0.0.0,被保留用于环回(Loopback)地址,用来测试TCP/IP和本机进程间的通信。因此,发送给网络地址为127的数据包是永远送不到TCP/IP网络上的。 .

127.0.0.1属于{127,}集合中的一个,而所有网络号为127的地址都被称之为回环地址,所以回环地址!=127.0.0.1,它们是包含关系,即回环地址包含127.0.0.1。 
回环地址:所有发往该类地址的数据包都应该被loop back。 

1)传给环回地址(127.0.0.1)的任何数据均作为IP输入.
2)传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上.这是因为广播传送和多播传送的定义包含主机本身.
3)任何传给该主机IP地址的数据均送到环回接口.

用途: 
* 回环测试,通过使用ping 127.0.0.1 测试某台机器上的网络设备,操作系统或者TCP/IP实现是否工作正常。 
* DDos攻击防御:网站收到DDos攻击之后,将域名A记录到127.0.0.1,即让攻击者自己攻击自己。 
* 大部分Web容器测试的时候绑定的本机地址。
        
        可以理解为本机有三块网卡,一块网卡叫做 loopback(这是一块虚拟网卡),另外一块网卡叫做 ethernet (有线网卡),另外一块网卡叫做 wlan(无线网卡)。本机 IP 是真实网卡的 IP,具体来说有线无线各有一个,而 127.0.0.1 是那块叫做 loopback 的虚拟网卡的 IP


127.0.0.1 是一个环回地址。并不表示“本机”。0.0.0.0才是真正表示“本网络中的本机”。     //未知的ip0.0.0.0
在实际应用中,一般我们在服务端绑定端口的时候可以选择绑定到0.0.0.0,这样我的服务访问方就可以通过我的多个ip地址访问我的服务。 
比如我有一台服务器,一个外放地址A,一个内网地址B,如果我绑定的端口指定了0.0.0.0,那么通过内网地址或外网地址都可以访问我的应用。但是如果我之绑定了内网地址,那么通过外网地址就不能访问。 所以如果绑定0.0.0.0,也有一定安全隐患,对于只需要内网访问的服务,可以只绑定内网地址。

DoS攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访问,使目标系统服务系统停止响应甚至崩溃,而在此攻击中并不包括侵入目标服务器或目标网络设备。这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者允许的连接。这种攻击会导致资源的匮乏,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。
 


ip_1.1.1.1
代表受限广播地址 可以作为目的地址 但不可作为源地址 



0.0.0.0代表什么?

参考RFC文档: 
0.0.0.0/8 - Addresses in this block refer to source hosts on “this” 
network. Address 0.0.0.0/32 may be used as a source address for this 
host on this network; other addresses within 0.0.0.0/8 may be used to 
refer to specified hosts on this network

根据RFC文档描述,它不只是代表本机,0.0.0.0/8可以表示本网络中的所有主机,0.0.0.0/32可以用作本机的源地址,地址块0.0.0.0/32仅含有一个地址,被保留用于某主机需要发送一个IPv4分组,但不知道自己地址的情况下。通常用于主机正在启动,主机为了获取自己的地址,向引导DHCP服务器发送一个IPv4分组,以全0的地址作为源地址,受限广播地址作为目的地址。

在路由器配置中可用0.0.0.0/0表示默认路由,作用是帮助路由器发送路由表中无法查询的包。当到达了一个知道如何到达目的地址的路由器时,这个路由器就会根据最长前缀匹配来选择有效的路由。子网掩码匹配目的IP地址而且又最长的网络会被选择。用无类别域间路由标记表示的IPv4默认路由是0.0.0.0/0。因为子网掩码是/0,所以它是最短的可能匹配。 当查找不到匹配的路由时,自然而然就会转而使用这条路由。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。严格说来,0.0.0.0/0已经不是一个真正意义上的IP地址了。它表示的是这样一个集合:所有未知的主机和目的网络。这里的“未知”是指在本机的路由表里没有特定条目指明如何到达综合起来可以说0.0.0.0/0表示整个网络。它的作用是帮助路由器发送路由表中无法查询的包。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。

IPV4中,0.0.0.0地址被用于表示一个无效的,未知的或者不可用的目标。 
* 在服务器中,0.0.0.0指的是本机上的所有IPV4地址,如果一个主机有两个IP地址,192.168.1.1 和 10.1.2.1,并且该主机上的一个服务监听的地址是0.0.0.0,那么通过两个ip地址都能够访问该服务。 
* 在路由中,0.0.0.0表示的是默认路由,即当路由表中没有找到完全匹配的路由的时候所对应的路由。
用途总结:
当一台主机还没有被分配一个IP地址的时候,用于表示主机本身。(DHCP分配IP地址的时候)
用作默认路由,表示”任意IPV4主机”。
用来表示目标机器不可用。
用作服务端,表示本机上的任意IPV4地址。 



localhost
相比127.0.0.1,localhost具有更多的意义。localhost是个域名,而不是一个ip地址。之所以我们经常把localhost与127.0.0.1认为是同一个是因为我们使用的大多数电脑上都讲localhost指向了127.0.0.1这个地址。 

在ubuntu系统中,/ets/hosts文件中都会有如下内容:
127.0.0.1 localhost
127.0.1.1 jason-Lenovo-V3000
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
上面第一行是几乎每台电脑上都会有的默认配置。 
但是localhost的意义并不局限于127.0.0.1。
localhost是一个域名,用于指代this computer或者this host,可以用它来获取运行在本机上的网络服务。 
在大多数系统中,localhost被指向了IPV4的127.0.0.1和IPV6的::1。
127.0.0.1 localhost
::1 localhost

[root@10.67.9.137 /etc]# cat hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

所以,在使用的时候要注意确认IPV4还是IPV6
 
还有个地址段169.254.0.0/16,可以看成一个B类私网地址,专门用来在DHCP获取失败时自动配置的接口地址
RFC3927 中的IP冲突检测机制还是很完善的,考虑了多个设备在同时local link时的情况;考虑到每到主机都必须要有一个IP地址,169.254.X.X跟IPV6的fe80开头的地址是作用是一样的。
3927指出,在IP网络里,每台主机都需要一个IP地址,通常情况下是通过DHCP服务器自动分配,但某些特殊情况下,DHCP分配失败或者没有DHCP服务器时,机器可以自己分配一个IP来完成这个工作。 


 

  • 11
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值