上回说到,通过路由器就可以顺利把数据送到互联网上了,互联网上的万千路由器互相配合就可以实现数据通信和资源共享。不过到这篇文章为止,我们只说了路由交换的事儿,那电脑上又该怎么配置呢?这篇文章就来看看用户端的设置。

动态 IP 地址

一台新电脑,开机后直接插上网线(假设这根网线有网络),不需要做任何配置就可直接上网,查看下这台电脑的网卡情况,如图所示,这是一台 Windows 电脑上的设置。

Windows 网卡设置页面

我们发现默认情况下是自动获得 IP 地址,这就是动态 IP 地址。动态 IP 地址就是网络中的服务器给这台电脑自动分配的地址,不用人为设置。只要配置了动态 IP 地址的电脑开机且通过物理方式连接进来,就可以获得一个 IP 地址并接入到网络中。实现这个技术的协议就叫做 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),通常在大型网络中为主机分配地址。DHCP 的前生是 BOOTP,在有些地方我们也可以看到 BOOTP 的字样,这也是一个自动分配 IP 地址的协议,现在我们使用到的绝大多数网络都是动态 IP 地址。

DHCP 中有两个角色,一个叫做 DHCP Server,负责为网络中的主机分配地址(一般由路由器承担这个功能,网络中也可设置单独的 DHCP Server);另一个叫做 DHCP Client,负责向 Server 请求地址(配置了动态地址的手机和电脑都叫 DHCP Client)。当 Server 配置好后,并不会主动向网络中的主机分配地址,因为它也不知道谁需要地址,所以需要已配置自动获得 IP 地址的主机(DHCP Client)先在网络中寻找 Server,收到消息后的 Server 会回应,Client 收到应答后会向 Server 去请求地址,收到请求后的 Server 才会给主机分配地址

DHCP 除了给主机分配 IP 地址和子网掩码以外,还会分配网关信息和 DNS 信息,以及给某一台主机分配固定的 IP 地址,甚至还可以携带上一些别的信息。 

静态 IP 地址

也不是所有的场景都是自动获取 IP 地址的,在某些需要对网络地址严格管控的环境中一般会用到静态 IP 地址,或者是向运营商申请的就是静态 IP 地址。你的管理员或者运营商会告诉你四条信息,这里和 DHCP 获取到的信息是一样的,将其填入主机就可以了。下图是一台 Windows 电脑使用静态 IP 的示例。

Windows 配置静态 IP

静态 IP 也有一些缺陷,首先就是需要人工手动配置,配置过程繁琐,公司需要有专门的 IT 人力来管理这方面的事务;其次我们了解到每个网络的 IP 地址都不一样,而且现在的 IPv4 地址还有公网地址和私网地址之分,私网地址只有本地网络中有效换个网络又需要重新配置,体验十分不好;最后就是这个配置需要一定的专业基础,如果没有合理的 IP 规划,可能出现 IP 地址冲突,导致两者都无法上网,IP 数量规划不合理还会导致一些人没有可用的地址,无法接入网络,如果使用者对计算机网络毫无了解就可能出现换个网络环境电脑/手机直接断网的情况。 

拨号上网

除了上述两种获取地址的方式以外,我们还经常提到“拨号上网”这个词,PPPoE(Point-to-Point Protocol Over Ethernet,基于以太网的点对点通讯协议,)就是我们常说的拨号上网。PPPoE 是从窄带技术演化而来,PPP 最早就是专门为电话线上网而设计的,当宽带普及后,为了兼容以前的电话线用户习惯,故在宽带网络中继承了 PPP 技术。 

Windows 拨号上网

在使用宽带拨号上网的时候,只需要填上运营商给的用户名和密码就可以获取到相应的信息并上网了,不过 PPPoE 只是一种过渡技术,而且会造成一些不必要的带宽损耗,终将会被新技术完全取代。

为什么访问网页用的不是 IP

通过上述方式正确获取到 IP 地址和网关之后就可以正常上网了,但大家会发现,我们浏览网页的时候访问的不是一串数字,而是如 https://www.ui.com.cn/ 这样的一串东西,这串东西叫做网址,网址里面的这个 www.ui.com.cn 叫做域名。想要访问别人,首先要知道别人家的地址,在 TCP/IP 网络中,地址是以点分十进制(IPv4 地址)或者是冒号分十六进制(IPv6 地址)的形式书写,无论是哪种形式,记忆起来都不太方便,所以就为这些 IP 又取了新名字,这些新名字有一个统称——域名,并用 DNS(Domain Name System,域名系统)来管理域名和 IP 的对应关系。

对于终端用户来说,访问域名和访问 IP 是等价的,假设我想访问 Ubiquiti 的中文官网,域名是 www.ui.com.cn,我可以直接在浏览器中输入这个域名,如果知道 IP 地址的话,也可以直接在浏览器中输入 IP 地址,访问到的页面是一模一样的。更有趣的是,域名和 IP 可以一一对应,也可以一对多。比如说一个域名可以对应多个 IP 地址,但是一个 IP 地址同一时间只能对应一个域名,这样有什么好处呢?比如说一些大企业,官网每天访问量极大,他们在全国各地都有自己的服务器,这些服务器的内容一模一样,互为备份也起到分流的作用。我们知道用来标识网络节点的 IP 地址一定是唯一的,那这些位于公网上的服务器 IP 地址肯定不一样,但域名是一样的,通过一些策略,就可以就近访问这些服务器。比如说访问百度,肯定会有人发现,在不同的网络中访问到的百度的 IP 地址是不一样的,但域名没有变,页面没有变,检索结果也是一模一样的。

那该如何看域名对应的 IP 呢?最简单的方法就是打开一个终端(Windows 为 cmd 终端,macOS 直接可以打开一个终端),使用 ping 命令去 ping 一个域名,然后就会自动将这个域名解析为 IP 地址,不同的网络可能会得到不一样的解析结果。如图所示,这个命令会直接将 www.baidu.com 的解析结果显示出来,并告诉我们往返所需的时间,发送的数据包接受情况。

故障排除

在设置没有问题的情况下,就可以正常上网了,但有时候网络也不是那么尽如人意,如果网络出现了问题,应该怎么排查呢?

首先需要知道自己面临的是什么问题,一般会有这样几种情况:

  1. 断网了
  2. 网络非常非常慢
  3. 网络不稳定

针对这几类问题我们有一个故障排除的原则:

  1. 首先看一眼光猫的指示灯有没有问题,如果光猫故障第一时间联系您的运营商;
  2. 是一个终端有这样的问题,还是所有终端都是同样的问题;
  3. 判断故障出现在网络的哪一段,可以通过连接不同的设备来判断,比如说原本是连接 Wi-Fi 的,现在连接有线试试有没有一样的问题;
  4. 如果是 Wi-Fi 的问题,那在下一篇文章会为大家详细说说如何优化 Wi-Fi;
  5. 如果有线也出现了问题,先看看自己是否还能获取到 IP 地址,能否顺利访问到网关(可通过上文提到的 ping 命令来实现),到网关的延迟大不大,是否有丢包的情况;
  6. 使用 ping 命令访问一个域名,然后再访问一个存在的公网 IP,如果 IP 访问正常,而域名不正常,可能是 DNS 的问题;如果两个都不正常,尝试重新获取地址、重启路由器等操作;
  7. 如果网络出现异常卡、或者频繁掉线的情况,看看有没有被邻居蹭网,有没有正在进行大文件传输,或者是网络中是否连接了过多用户;
  8. 如果通过上述操作依旧无法解决故障,请联系您的服务提供商或设备提供商。

这已经是《入网指南》系列的第五篇文章了,有线部分的内容基本结束,下一篇文章就要开始讲述无线部分的内容啦,包括常见的一些名词 WLAN,Wi-Fi 到底是什么意思,Wi-Fi 6 为什么叫 Wi-Fi 6,无线网络该如何优化等等。


扩展阅读

入网指南 01 | 一文读懂你身边的「网络」

入网指南 02 | 当你发消息的时候,发生了什么

入网指南 03 | 交换机在交换什么?

入网指南 04 | IP 地址大揭秘