IP地址,子网掩码,默认网关,DNS讲解

IP地址:用来标识网络中一个个主机,IP有唯一性,即每台机器的IP在全世界是唯一的。

子网掩码:用来判断任意两台计算机的ip地址是否属于同一子网络的根据。最为简单的理解就是两台计算机各自的ip地址与子网掩码进行and运算后,得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。(具体子网掩码各位的含义待补充。)

网关:实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为"192.168.1.1~192. 168.1.254",子网掩码为255.255.255.0;网络B的IP地址范围为"192.168.2.1~192.168.2.254",子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络A向网络B转发数据包的过程。

所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。

DNS:域名服务器,用来解析域名的(域名与IP之间的解析),如果没有这东西,你必须输入网站的IP地址,有了DNS,你就可以直接输入网址。

如何计算网络地址 (子网掩码)

将IP地址和子网掩码都换算成二进制,然后进行与运算,结果就是网络地址.与运算如下所示,上下对齐,1位1位的算,1与1=1 ,其余组合都为0

为什么要计算网络地址?

就是让网络中的计算机能够相互通讯。最简单的网络是用网线(交叉线)直接将两台计算机连起来。

下面是几种IP地址设置,看看在不同设置下网络是通还是不通:

(1)1号机的IP地址为192.168.0.1,子网掩码为255.255.255.0

2号机的IP地址为192.168.0.200子网掩码为255.255.255.0

这来台计算机就能正常通讯.

(2)如果1号机地址IP地址仍为192.168.0.1,子网掩码255.255.255.0

将2号机的IP地址改为192.168.1.200,子网掩码255.255.255.0

那这两台就无法通讯.

(3)1号机的IP地址为192.168.0.1,子网掩码为255.255.255.192

2号机的IP地址为192.168.0.200,子网掩码为255.255.255.192

这台计算机就不能正常通讯。


  1. 从下面运算结果可以看出(1)中两台计算机的网络地址都为192.168.0.0,且IP地址不同,所以可以通。
  2. 从下面运算结果可以看出1号机的网络地址为192.168.0.0,2号机的网络地址为192.168.1.0 不在一个网络,所以不通.
  3. 从下面运算结果可以看出1号机的网络地址为192.168.0.0,2号机的网络地址为192.168.0.192 不在一个网络,所以不通
相关推荐
明月看潮生22 分钟前
青少年编程与数学 02-003 Go语言网络编程 15课题、Go语言URL编程
开发语言·网络·青少年编程·golang·编程与数学
龙哥说跨境1 小时前
如何利用指纹浏览器爬虫绕过Cloudflare的防护?
服务器·网络·python·网络爬虫
懒大王就是我1 小时前
C语言网络编程 -- TCP/iP协议
c语言·网络·tcp/ip
Elaine2023912 小时前
06 网络编程基础
java·网络
海绵波波1073 小时前
Webserver(4.3)TCP通信实现
服务器·网络·tcp/ip
热爱跑步的恒川6 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
云飞云共享云桌面7 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
音徽编程9 小时前
Rust异步运行时框架tokio保姆级教程
开发语言·网络·rust
幺零九零零10 小时前
【C++】socket套接字编程
linux·服务器·网络·c++
23zhgjx-NanKon11 小时前
华为eNSP:QinQ
网络·安全·华为