计算机网络 之 【IP协议】(路由器、route及ip route指令、路由表、运营商简介)

目录

1.路由器

(4)路由器的核心功能

(6)一句话总结

[2.route指令及ip route指令简介](#2.route指令及ip route指令简介)

2.2.Flags(标志位)详解

[2.3.ip route](#2.3.ip route)

2.4.路由表

2.4.1路由表的工作原理(最长前缀匹配)

3.运营商

3.3报文跨网络传输的完整路径(用户→百度)


1.路由器

(1)定义

路由器 主要是一种网络层设备,负责连接两个或多个不同子网,根据路由表目的IP地址,将数据包从源子网转发到目标子网

(2)路由器工作的层级(OSI模型)

OSI层级 设备 处理单位 依据
网络层(第三层) 路由器 IP报文 IP地址、路由表
数据链路层(第二层) 交换机 MAC地址
物理层(第一层) 集线器 比特

路由器是典型的三层设备

  • 转发决策(去哪个子网):看第三层(IP)
  • 帧封装与物理发送:依赖第二层和第一层

路由器在转发IP报文时,会丢弃原数据帧的二层头部(源/目的MAC) ,然后在出接口上根据下一跳IP的ARP结果重新封装一个新的二层帧

广播帧不会跨路由器转发, 路由器会隔离广播域

(3)从硬件架构上看,路由器和通用计算机没有本质区别

组件 通用计算机 路由器
CPU Intel/AMD 处理器 MIPS、ARM、x86 处理器
内存 DRAM DRAM(存储路由表、缓存包)
存储 硬盘/SSD Flash(存储操作系统和配置)
网络接口 网卡(1-2个) 多个网络接口(WAN/LAN)
操作系统 Windows/Linux/macOS 路由器OS(IOS、VRP、OpenWrt等)(专用)

举例说明

设备类型 能否当路由器用? 说明
家用路由器 本身就是 专用计算机,带路由功能
旧电脑 + 两张网卡 可以 安装Linux/软路由系统(如OpenWrt、pfSense)
普通PC 默认不行 默认没有开启IP转发功能

()路由器IP

路由器有两个关键IP:LAN口IP(私网,如192.168.1.1)和 WAN口IP(运营商分配,可能是公网或运营商私网)

场景分类 子场景 获取/配置方式 典型用途 常见设备
LAN侧多IP 多VLAN子网 一个LAN口配置多个VLAN子接口 隔离办公网、访客网、IoT设备网 企业级路由器、支持VAC的交换机
多物理LAN口 路由器提供多个独立LAN接口 不同物理区域划分不同子网 多口企业路由器
单口辅助IP 同一接口绑定多个IP地址(如eth0:1 临时地址、过渡期配置、多服务监听 软路由、Linux服务器
WAN侧多IP 多WAN口 连接多个不同运营商的宽带线路 带宽叠加、链路冗余、负载均衡 多WAN企业路由器
单WAN多PPPoE会话 同一物理端口建立多个拨号连接 单线路多IP、带宽叠加(需运营商支持) 软路由、高配企业路由
单WAN多静态IP 运营商分配一个主IP及多个附加IP 托管多个SSL网站、运行多个服务 企业专线场景
  • 不同的路由器, 子网IP可以相同
  • 子网内的主机IP地址不能重复,但是子网之间的IP地址可以重复
  • 每一个家用路由器,其实又作为运营商路由器的子网中的一个节点。 这样的运营商路由器可能会有很多级,最外层的运营商路由器的WAN口IP就是一个公网IP
  • 子网内的主机需要和外网进行通信时, 路由器将IP首部中的IP地址进行替换(替换成WAN口IP),这样逐级替换, 最终数据包中的IP地址成为一个公网IP

(4)路由器的核心功能

功能 说明
路由 建立和维护路由表(静态路由或通过OSPF/BGP等动态学习)
转发 根据路由表,将IP报文从入接口转到出接口
子网隔离 连接不同子网,隔离广播域
DHCP 给子网内设备自动分配IP(常见于家用/边缘路由器)
NAT 让私有IP设备通过公网IP上网(源地址转换)
ACL(访问控制列表) 控制哪些数据包能通过(可基于MAC、IP、端口进行无状态过滤)

(5)路由器的本质性结论

属性 核心结论
主机属性 路由器本质也是某个子网中的一台主机,必须配置IP地址
多接口属性 路由器至少连接两个子网,必须拥有多个IP地址
世界观属性 子网掩码和路由表定义了路由器眼中的网络世界
转发引擎属性 核心任务是IP报文转发,路由是"修路",转发是"走路"

(6)一句话总结

路由器是一台专门用于连接子网、转发IP报文的网络专用计算机,它运行着路由器操作系统(如IOS、OpenWrt),拥有CPU、内存、存储和多个网络接口

本质上,它就是一台"只有网卡和CPU、专门用来指路"的计算机

2.route指令及ip route指令简介

复制代码
route [-f] [-n] [-C] [-v] add|del [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If]

常用选项:

选项 说明
-n 不解析主机名(直接显示IP地址),速度更快
-v 显示详细信息
-e 以netstat格式显示路由表(等同于netstat -r
add 添加一条路由
del 删除一条路由
-net 目标是一个网络
-host 目标是一个主机

(1)基本查看命令

复制代码
# 基本查看(会尝试解析主机名,较慢)
route

# 推荐方式:不解析主机名,直接显示IP
route -n

各列含义:

列名 含义 说明
Destination 目标网络/主机 数据包要到达的目的地
Gateway 网关地址 下一跳路由器的IP,0.0.0.0*表示直连
Genmask 子网掩码 用于判断目标地址属于哪个网络
Flags 路由标志 见下表详细说明
Metric 路由度量值 越小优先级越高,用于多路径选择
Ref 引用计数 当前路由被使用的次数(通常不用关心)
Use 查找次数 通过该路由发送的数据包数量
Iface 网络接口 从哪个网卡发送(eth0, wlan0等)

2.2.Flags(标志位)详解

这是Linux route命令输出中最重要的一列:

Flag 全称 含义
U Up 路由处于活动状态(可用)
G Gateway 使用网关(非直连网络)。没有G表示目标网络直连
H Host 目标是一个主机(而不是网络)
R Reinstate 动态路由恢复标志(通常不用)
D Dynamic 由路由守护进程动态添加
M Modified 由路由守护进程修改
A Address 由地址配置添加
C Cache 路由缓存条目
! Reject 路由被拒绝,数据包会被丢弃
  • U:直连网络(如本地局域网)
  • UG:默认路由或远程网络(需要通过网关转发)
  • UH:主机路由(到单个IP的精确路径)
  • UGH:通过网关访问的特定主机

(3)注意事项

  • 使用route命令添加的路由重启后丢失,要永久保存,需要写入配置文件
  • 所有修改操作(add/del)都需要root权限,查看操作不需要root
  • 主机路由(-host,掩码/32)优先级最高
  • 网络路由(根据掩码长度,越长越优先)
  • 默认路由(0.0.0.0/0)优先级最低

2.3.ip route

复制代码
ip route { add | del | change | append | replace | show | flush | get } ROUTE
  • 查看选项
选项/参数 说明 示例
show 显示路由表(默认命令) ip route show
list 等同于 show ip route list
-n / -numeric 不解析主机名,直接显示IP ip -n route show
-c / -color 彩色输出,不同类型路由用不同颜色 ip -c route show
-j / -json JSON格式输出(便于脚本处理) ip -j route show
-p / -pretty 美化输出(与JSON配合使用) ip -j -p route show
-0 不显示协议信息(加快显示速度) ip -0 route show
-4 仅显示IPv4路由 ip -4 route show
-6 仅显示IPv6路由 ip -6 route show
-s / -stats 显示统计信息(数据包计数等) ip -s route show
-d / -details 显示详细信息 ip -d route show
-f / -family 指定地址族(inet/inet6) ip -f inet route show
-o / -oneline 每条路由输出为单行 ip -o route show
-t / -timestamp 显示时间戳(用于监控) ip -t route show

输出字段详解:

字段 含义 示例
default 默认路由(等同于0.0.0.0/0) default
via 下一跳网关IP via 192.168.1.1
dev 输出接口 dev eth0
proto 路由协议类型 proto static, proto kernel, proto dhcp
scope 路由作用域 scope global, scope link, scope host
src 首选源地址 src 192.168.1.100
metric 路由度量值 metric 100
blackhole 黑洞路由 blackhole 10.0.0.0/8

常用子命令:

命令 说明
ip route show 查看路由表
ip route add 添加路由
ip route del 删除路由
ip route replace 替换路由(不存在则添加)
ip route get 模拟路由查询
ip route flush 批量删除路由
ip route save/restore 保存/恢复路由表

2.4.路由表

路由表的核心作用是:当一个数据包需要被转发时,查找路由表,决定应该从哪个接口(网卡)发出去,以及发往哪个"下一跳"路由器

2.4.1路由表的工作原理(最长前缀匹配)

  1. 提取数据包的目标IP地址(例如:192.168.1.100)
  2. 遍历路由表中的每一条记录
  3. 对于每条记录,将目标IP地址与记录的网络掩码进行"按位与"运算,得到一个结果
  4. 检查这个结果是否等于该记录的目的地/目标网络。如果相等,则说明这条记录匹配
  5. 从所有匹配的记录中,选择网络掩码最长(即最精确)的那一条。这就是最长前缀匹配规则
  6. 根据选中的记录,把数据包从接口发往网关/下一跳

2.4.2特殊且重要的路由条目

(1)默认路由(Default Route)

  • 形式:目的地 0.0.0.0,掩码 0.0.0.0
  • 作用:当数据包的目标地址不匹配路由表中任何其他更具体的条目时,就走这条路由。它相当于"所有其他地方的包裹,都发往这个总出口"。
  • 网关:通常是你的"默认网关"(比如家里的路由器地址 192.168.1.1),它再负责帮你把数据转发到外网(互联网)

(2)本地直连路由

  • 形式:当你给电脑的网卡配置一个IP(如 192.168.1.10/24)时,系统会自动生成两条直连路由
  • 一条:到达该网段(192.168.1.0/24)的路由,网关是 * 或 0.0.0.0,接口是本地网卡。这意味着发往 192.168.1.x 的数据包,直接从本地网卡发出去,不需要找网关
  • 另一条:到达本机IP(192.168.1.10)的主机路由,用于访问自己

(3)主机路由

  • 形式:目的地是一个具体的IP地址,掩码是 255.255.255.255
  • 作用:指定到某一个特定主机的精确路径。它比任何网段路由都优先

2.4.3路由表来源

  1. 直连路由:自动生成。给接口配置IP和掩码后,系统自动添加
  2. 静态路由:网络管理员手动添加。适合小型、稳定的网络
  3. 动态路由:通过路由协议(如OSPF、BGP、RIP)在路由器之间自动学习、交换而来的。适合大型、复杂、会变化的网络

3.运营商

3.1 我们是怎么上网的(接入流程)

  • 物理接入:城镇联系工作人员网线入户,城市规定光纤入户,光纤传递光信号
  • 信号转换:调制解调器(光猫)将光信号转换为数字信号
  • 认证上网:上网可能需要WIFI账号密码,运营商验证PPPoE账号和密码
  • 家庭组网:家用路由器构建局域网(LAN),可设置WIFI账号密码,对上网用户做认证

| 对比项 | PPPoE 账号密码 | WiFi 账号密码 |
| 作用位置 | 路由器 ↔ 运营商(BRAS) | 手机/电脑 ↔ 路由器 |
| 目的 | 认证用户身份,允许上网 | 加密无线连接,防止蹭网 |
| 谁设置 | 运营商提供(办理宽带时给用户) | 你自己在路由器后台设置 |
| 验证方 | 运营商的认证服务器 | 路由器本身 |
| 是否必须 | 必须(否则无法上网) | 可选(有线连接不需要) |
| 修改方式 | 路由器 WAN 口设置 | 路由器 WiFi 设置 |

典型形式 139****1234 + 短信密码 MyHome_5G + Abc123456

3.2运营商做了什么

运营商 = 物理基础设施的建设者 + 公网IP资源的管理者 + 报文跨网络传输的调度者

(1)物理层:把网络铺到你家里

  • 拉光纤、建机房、设BRAS、部署骨干网
  • 国家扶持:重资产、回报慢,私企不愿干

(2)资源层:管理公网IP和路由

  • 向国际组织申请大段公网IP(如中国电信AS4134拥有约1.2亿个公网IP)
  • 国家→省→市→区县层级分配IP前缀(可理解为:前x位国家,再y位省市,再若干位市区县)
  • 通过BGP协议(了解、不做展开)与其他运营商交换路由

(3)业务层:认证、计费、NAT

  • 验证你的宽带账号密码
  • 给用户分配一个动态公网IP(或运营商级私网IP)
  • 在你访问外网时做必要的地址转换
层面 主要事项 类比概况
物理层 把网络铺到你家里 "路"的建设者
资源层 管理公网IP和路由 "门牌号"的分配者
业务层 认证、计费、NAT "通行证"的管理者

运营商 = 修路的 + 发门牌号的 + 查票的

3.3报文跨网络传输的完整路径(用户→百度)

用户的私有IP经过家用路由器NAT变成运营商分配的公网IP,然后这个公网IP在运营商构建的骨干网中逐级路由(通过最长前缀匹配:先比较国家IP,再比较省市IP,最终到主机),最终到达目标服务器;返回时反向NAT回到你的私有IP

运营商负责这一切的物理网、路由表和认证计费

阶段 位置 源IP 目标IP 关键动作
用户的电脑 192.168.1.2 110.242.68.66(百度) 发请求
家用路由器 做SNAT:源IP→123.123.123.123(WAN口公网IP) 不变 NAT转换
运营商接入网(BRAS) 123.123.123.123 不变 认证、限速、计费
运营商城域网 同上 不变 查路由表,下一跳
运营商骨干网/国际出口 同上 不变 跨省/跨国转发
百度服务器 123.123.123.123 百度自己的IP 收到请求,返回数据
原路返回(路径可能不同) 百度IP 123.123.123.123 反向转发
用户家路由器 做DNAT:目标IP→192.168.1.2 不变 反向NAT
  • 只有第一跳(家用路由器)和最后一跳(用户家路由器)处理私有IP

  • 中间所有运营商路由器只看见公网IP

  • 用户在云服务器上自定义的服务器程序想要被外网访问,必须使用云服务器的公网IP(其他主机根据云服务器公网IP+程序对应端口号访问服务)

  • XShell客户端通过云服务器公网IP发起ssh连接请求,服务器上的sshd进程响应连接,连接建立后,用户获得一个虚拟终端,可以像操作本地电脑一样执行命令、编辑文件、运行程序

  • 云服务器是互联网厂商使用虚拟化技术提供的虚拟电脑

    万台物理服务器(宿主机)
    ↓ 虚拟化软件(KVM)
    创建大量虚拟机
    ↓ 自动化平台(OpenStack / 自研)
    用户网页点击 → 自动分配资源
    ↓ 配置网络、公网IP、安全组
    用户得到一个云服务器

相关推荐
Proxy_ZZ02 小时前
华为ICT大赛实践赛学习笔记(一):零基础开局,我的网络赛道入坑记录
网络·智能路由器
哇蛙蛙2 小时前
H3CNE--22.OSPF
网络·经验分享·网络协议·tcp/ip·智能路由器·h3cne
可乐鸡翅好好吃2 小时前
nRF52840 BLE 多服务开发中的 NRF_ERROR_NO_MEM 排查与解决实战
网络
kevien_G12 小时前
Http协议
网络·网络协议·http
琪伦的工具库2 小时前
批量IP在线检测与警报工具使用说明:支持IP段与域名导入,并发ping轮询/声音告警/离线日志导出
网络·网络协议·tcp/ip
观无3 小时前
Modbus RTU 与 Modbus TCP 温湿度采集
网络·网络协议·tcp/ip
空中海3 小时前
3.4 状态同步与生命周期管理
android·网络
航Hang*3 小时前
Windows Server 配置与管理——第7章:配置DNS服务器
运维·服务器·网络·windows·安全·虚拟化
xixixi777773 小时前
通信产业的“全维度加速”:从5G-A商用、6G冲刺到卫星互联网密集组网
大数据·网络·人工智能·ai·多模型