URL 是什么?
[协议]://[域名或IP]:[端口]/[路径]?[查询参数]#[锚点]
协议
传输协议指计算机通信和网络设备的共同语言
这里的协议通常指的是 HTTP 或 HTTPS
HTTP 默认端口 80,HTTPS 默认端口 443
IP
每个连接网络的设备都会被分配一个 IP 地址。
通过 IP 地址,可以定位到每台设备的位置。设备间可以互相通讯。
路由器
路由器有两个 IP,一个外网 IP,一个内网 IP。
内网的设备可以互相访问,外网的设备也可以互相访问。
内网不能直接访问外网,外网也不能直接访问内网。如果想要访问,必须经过路由器中转。
内网和外网是两个互相隔离的空间,唯一的联通点就是路由器。所以路由器有时候也叫做网关。
外网IP
运营商带宽连接到路由器后,会给路由器分配一个 IP,这个 IP 就叫做外网 IP。
如果重启路由器,那么会有可能被重新分配一个 IP。
内网IP
路由器还会创建一个内网,为每台设备都分配一个内网 IP。
一般路由器给自己分配的 IP 为 192.168.1.1
特殊 IP
127.0.0.1 表示本机
localhost 通过 hosts 指定为本机
0.0.0.0
端口
一台设备往往会提供多个服务,而每个服务被分配的号码就叫做port(端口号) 。
一共有 65535个端口。
常见端口
HTTP 80
HTTPS 443
FTP 21
端口规则
0 ~ 1023 号端口是留给系统用的
具有管理员权限才能使用 0 ~ 1023 端口
其他端口提供给用户使用
如果端口被占用,就只能换一个端口
用哪个端口?
TCP/UDP端口列表 - 维基百科,自由的百科全书 (wikipedia.org)
域名
域名是对 IP 的别称
ping
在命令行中使用 ping 命令可以测试网络连通性以及获取域名对应的 ip
ping baidu.com
ping qq.com
域名分类
com 为顶级域名
baidu.com 为二级域名
www.baidu.com 为三级域名
DNS
域名和 IP 通过 DNS 对应起来
nslookup
在命令行中使用 nslookup 命令用来查询 DNS 记录,获取域名对应的所有 ip
nslookup baidu.com
- 一个域名对应不同的 IP的方式叫做均衡负载,减轻机器压力。
- 一个 IP 对应不同域名的方式叫做共享主机,预算不足时可以这么做。
路径
跳转不同页面
https://news.qq.com/
https://new.qq.com/ch/photo/
查询参数
相同页面获取不同内容
https://www.baidu.com/s?wd=apple
https://www.baidu.com/s?wd=xiaomi
锚点
相同内容不同位置
https://developer.mozilla.org/en-US/docs/Learn/HTML#prerequisites
https://developer.mozilla.org/en-US/docs/Learn/HTML#modules