网络基础(2)网络核心词汇

1.2.1 子网掩码和IP

IP其是一个32位的二进制,为了便于记忆就将它分为4组,每组8位,由小数点分开,例如:

二进制表示:00000000.10010111.11111111.00001111
十进制表示:251.151.255.15

0~255
192.178.11.211
192.178.11.311

在网络中的每台电脑都会有一个IP与之绑定,这样通过IP就可以找到相应的电脑。

一个IP地址可以划分为两个部分,即:网络地址 + 主机地址。

  • 问题1:如何确定网络地址和主机地址呢?
  通过子网掩码就可以确定IP的网络地址和主机地址。

  示例1:
      	IP:192.168.1.199      11000000.10101000.00000001.11000111
  	子网掩码:255.255.255.0     11111111.11111111.11111111.00000000
  此时,网络地址就是前24位 + 主机地址是后8位。你可能见过有些IP这样写 192.168.1.199/24,意思也是前24位是网络地址。


  示例2:
      	IP:192.168.99.254     11000000.10101000.01100011.11111110
  	子网掩码:255.255.240.0     11111111.11111111.11111100.00000000
  此时,网络地址就是前22位 + 主机地址是后10位。你可能见过有些IP这样写 192.168.99.254/22,意思也是前22位是网络地址。
  • 问题2:划分 网络地址 + 主机地址 的意义是什么?

    网络地址相同的IP,也称为属于同一个网段。
    在局域网内只有同一个网段的IP才能相互通信,不同网段IP想要通信需要借助路由的转发才能通信。
    
    当了解子网掩码之后,其实就可以确定某个网段可以容纳的主机个数,例如:
    【IP: 192.168.10.2  掩码:255.255.255.0】 和 【192.168.10.251 掩码:255.255.255.0】 数据同一个网段。
    
    	示例网段的主机范围:11000000.10101000.00001010. 00000001  ~  11000000.10101000.00001010.  11111110
    	                 --------------------------              --------------------------
    	                          网络地址                                   网络地址
    				           192.168.10.1                 ~           192.168.10.254
    
    【IP: 192.168.8.1  掩码:255.255.240.0】 和 【192.168.11.254 掩码:255.255.240.0】 数据同一个网段。
    	子网掩码:255.255.240.0
    	示例网段的主机范围:11000000.10101000.000010 00.00000001  ~  11000000.10101000.000010 11.11111110
    	                 11111111.11111111.111111 00.00000000
    	                 ------------------------                 ------------------------
    	                          网络地址                                   网络地址
    				           192.168.8.1                 ~           192.168.11.254
    				           
    【IP: 192.168.96.1  掩码:255.255.240.0】 和 【192.168.99.254  掩码:255.255.240.0】 数据同一个网段。
    	示例网段的主机范围:11000000.10101000.011000 00.00000001  ~  11000000.10101000.011000 11.11111110
    	         
    	                 ------------------------                 ------------------------
    	                          网络地址                                   网络地址
    				           192.168.96.1                 ~           192.168.99.254    
    

1.2.2 DHCP

在一个局域网内想要给某台电脑分配IP有两种方式:

  • 手动设置,打开指定菜单栏在里面输入相应的IP信息。

  • 自动获取
    ​```python

    • 在电脑端,IP地址获取方式设置为自动。
    • 在路由器或三层交换机,开启DHCP服务,并设置IP地址池。(家用路由器上也是基于DHCP服务自动分配的IP)

    这样,电脑只要连接只该网络,DHCP服务就会为它自动分配IP、子网掩码、网关。

    
    

1.2.3 内网和公网IP

一般情况下,内网IP都用这些(潜规则):
	- 10.0.0.0 到 10.255.255.255
	- 172.16.0.0 到172.31.255.255
	- 192.168.0.0 到192.168.255.255

之前我们自己在一个局域网内为电脑分配的IP都称为内网IP,基于内网IP可以在一个局域网内进行相互通信(也需要相关的配置)。

如果想要通过互联网进行通信,就必须借助公网IP。例如,右边家庭电脑想访问左边某公司服务器上的部署的网站:

  • 第一步:左边公司,去运营商申请公网的固定IP(办理专线宽带时运营商会分配至少1个固定的IP地址),其实运营商就是将你拉的这个专线和固定IP创建绑定关系。(假设公网IP:123.206.15.88)
  • 第二步:配置公网IP与指定服务器的转发规则。
  • 第二步:右边家庭,如果想要访问某个公司服务器上的网网站,只需要执行指定IP:123.206.15.88,运营商就会根据IP找到与之关联的公司专线,并通过公司路由器、防火墙等设备找到指定的服务器。

按理说,每个从运营商接入网的用户都可以有一个外网IP,但由于全球用户太多而IP根本就不够分配,所以,运营商网络会进行划分,让多个家庭宽带用户共用一个公网IP(动态,可能每次上网公网IP都不一样)。

让家庭用户想要通过网络访问访问其他IP时,先发给运营商由运营商向外转发到其他IP。

注意:外部用户想要访问家庭宽带的IP时,运营商不会把请求转发到我们的电脑。

  • 拉专线,申请固定公网IP
  • 买一台服务器(就是性能好的电脑)
  • 公网IP绑定至此服务器
  • 将写好的代码放在服务器上并运行起来

扩展:IPv4和IPv6

IPv4,长度为 32 位(4 个字节), 格式:A.B.C.D
IPv6,长度为 128 位(16 个字节),用":"分成8段,格式:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX(每个X是一个16进制数)。

1.2.4 云服务器

简单的说:他们造了一个机房(网吧),买了很多很多的服务器(高性能电脑),然后将他们放在机房,然后通电+通网,主要对外去租赁这些服务器资源,让用户不必再自己 拉专线+配置网络+买服务器。

假设,你想要在腾讯云租一台服务器,就可以根据自己的需求去选择配置,腾讯云会根据配置在他的物理机上虚拟出一个服务器,并进行相应的环境初始化并绑定公网固定IP,这样你就可以快速拥有一台可以被大家访问的服务器了。

注意:一台性能非常高的物理机虚拟出很多虚拟机,类似于你在自己电脑上通过vmware、parallel等搞出多个虚拟机。

1.2.5 端口

  • 网站A:使用8001端口,那么用户在自己电脑上或手机上访问时指定 IP和端口 即可,如: 123.206.15.88:8001
  • 网站B:使用8002端口,那么用户在自己电脑上或手机上访问时指定 IP和端口 即可,如: 123.206.15.88:8002

注意:端口的取值范围:0 ~ 65535,很多端口在计算机的内部已被使用,我们平时自定义时尽量选择5000之后的端口。

1.2.6 域名

假设你创业开发了一个网站,用户很难记住你的公网IP:123.206.15.88:80 ``123.206.15.88`。

所以,域名就诞生了,让域名和IP创建对应关系,用户只需要记住域名就可以了,例如:

www.baidu.com   -->  110.242.68.3
www.taobao.com  --> 121.18.239.232
...
  • 根据域名寻找IP。(寻找IP)

  • 获得IP之后,再通过IP再去访问指定服务器。

  • 第一步:在自己电脑的DNS缓存记录中寻找 域名对应的IP,如果未命中,则执行下一步。

  • 第二步:在自己电脑的hosts文件中寻找,如果未命中,则执行下一步。

    - mac系统:/etc/hosts 文件中
    - win系统:C:\Windows\System32\drivers\etc\hosts 文件中
    
    # 内容示例
    127.0.0.1	localhost
    255.255.255.255	broadcasthost
    127.0.0.1 kubernetes.docker.internal
    192.168.1.55 www.pythonav.com
    
  • 第三步:在自己电脑上找到DNS配置的地址(本地域名服务器),去这个地址寻找域名对应的IP,如果未命中,则执行下一步。
    image-20210207233253951

    常见的DNS服务器地址:
    	114.114.114.114(114 DNS)
        223.5.5.5(阿里 AliDNS)
        8.8.8.8(Google DNS,随着Google在中国的没落和国内官方的限制,已经不是太好用了)
        ...
        各大运营商也有相应的DNS服务器...
        
    如果你选择的是自动获得DNS,那么就会使用本地运营商的DNS服务器了。
    
  • 第四步:去根域名服务器中询问(全球共13台根域名服务器,距离中国最近的一台是在日本)

  • 租一个域名

  • 备案

  • 域名解析

    让域名和IP创建关联关系,并将关系同步到相关:本地域名服务器 和 根域名服务器(含顶级和二级域名服务器)。
    
posted @ 2021-11-19 22:40  下个ID见  阅读(50)  评论(0)    收藏  举报