什么是ip地址、子网掩码、网关和DNS?
什么是ip地址?
IP是32位二进制数据,通常以十进制表示,并以“.”分隔。IP地址是一种逻辑地地址,用来标识网络中一个个主机,IP有唯一性,即每台机器的IP在全世界是唯一的。
IP地址=网络地址+主机地址。
什么是子网掩码?
子网掩码不是单独存在的,它用于计算一个ip地址所归属的网络地址以及主机地址。
网络地址计算方法:ip地址的二进制和子网掩码的二进制作与运算。
主机地址计算方法:ip地址的二进制和(子网掩码取反之后)的二进制作与运算。
为什么需要网络地址?
网络地址用于判断不同主机是否位于同一个网络下,如果是,则不同主机之间才能进行通信。
为什么需要主机地址?
主机地址用于标识不同主机在网络中的位置,只有明确了位置,不同主机之间才可以明确是和谁在进行通信。
可以这么来理解,网络地址相当于我们位于同一个小区,主机地址相当于小区里每个住户的门牌号。只有在这个小区里的住户才能够通信,而且谁跟谁通信可以通过门牌号进行识别。
什么是网关?
网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。可以这么理解,现在有另外一个小区,他想和我们现在的小区进行通信,那应该怎么做呢?就是通过网关,网关可以是除全0的网络地址和全1的广播地址之外的其它ip地址。可以这么理解,每个住户有很多门,这些门控制着和其他小区住户之间的通信。也就是说每个主机可以有多个网关,如果没有设置网关,会有一个默认网关,一些信息会默认从这里发送出去。这里我有个疑问,如果是同一个小区之间呢,也需要网关吗?我去查了下,有这么两道题:
说明在同一个网络中是可以直接进行通信的。
什么是DNS服务器?
DNS是和ip地址是一一对应的。我们很容易区分不同的域名,比如www.baidu.com,但是机器它不是呀,所以通过DNS,可以将域名解析为Ip地址,进而找到所通信的位置。可以这么理解,小区A中住户1需要和小区B中住户1进行通信,但是A中住户1只知道B中住户1的名字,但不知道它的具体位置,于是A中住户1发消息(B中住户名字)给DNS,DNS从名字找到其对应的位置(ip地址),然后就可以通信啦。
具体流程如下: