IP: Internet Protocol

IP 解决了两件事:定位设备、封装数据报文,和其他设备交流。IP 地址用于标识设备。

外网 IP

内网 IP

  • 路由器创建内网,内网设备用内网 IP,格式为 192.168.xxx.xxx
  • 路由器给自己分配一个好记的IP,如 192.168.1.1
  • 路由器给每台内网设备分配 IP,比如:电脑为 192.168.1.2、手机为 192.168.1.3

几个特殊的 IP

  • 127.0.0.1 表示本机
  • localhost 通过 hosts 文件解析为 127.0.0.1

路由器的功能:

  • 现在路由器有两个IP,一个外网 IP 和一个内网IP
  • 内网中的设备可以互相访问,但是不能直接访问外网
  • 内网设备想要访问外网,就必须经过路由器中转
  • 外网中的设备可以互相访问,但是无法访问内网
  • 外网设备想要把内容送到内网,也必须通过路由器
  • 也就是说内网和外网就像两个隔绝的空间,无法互通,唯一的连接点就是路由器
  • 所以路由器有时候也被叫做「网关」

端口

不同端口表示不同服务,一共有 65535 个端口,从 1 到 65525。以下是部分端口

  • HTTP: 80
  • HTTPS: 443
  • FTP: 21

规则:

  • 1~1023 端口是系统端口,用户不该用
  • 1023 之后的端口可以用
  • 若端口被占用,换一个

域名

  • 域名是 IP 的别称
  • 1 个域名可对应不同 IP(负载均衡,防止 1 台机器扛不住)
  • 1 个 IP 可对应不同域名(共享主机,省钱)
  • DNS(Domain Name System,域名系统)连接域名和 IP。
  • 域名从右往左看,以 . 分隔
    • .org 是顶级域名
    • cyrusyip.org 是二级域名
    • xxx.cyrusyio.org 是三级域名
    • 以此类推

输入 URL 之后发生了什么

  1. 浏览器向 DNS 服务器询问 URL 的 IP
  2. 浏览器向对应 IP 的 80/443 端口发送请求
  3. 请求内容为 URL 的主页

访问页面

请求不同页面

使用不同路径:

同一页面,不同内容

使用查询参数:

同一页面,不同位置

使用锚点:

URL

URL 格式:协议类型://域名或IP:端口号/UNIX路径?查询#片段ID

示例:https://www.baidu.com/s?wd=hi#5

协议 域名 路径 查询参数 片段ID
https:// www.baidu.com /s ?wd=hi #5

curl

1
2
curl -v http://www.baidu.com # -v verbose
curl -v -s http://www.baidu.com # -s silent