转载请注明出处:
1.路由器和交换机的区别和过程
在windows 系统或linux 系统访问 外网ip 或域名时,都会通过层层的路由器,然后将请求转发到最终的目标服务器;因为互联网通过路由器实现公网与局域网的联通;
区分下路由器和交换机在ip 请求解析过程中的区别:
1、路由器:最主要的功能可以理解为实现信息的转送。把这个过程称之为寻址过程。因为在路由器处在不同网络之间,但并不一定是信息的最终接收地址。所以在路由器中, 通常存在着一张路由表。
2、交换机:交换机有带宽很高的内部交换矩阵和背部总线,并且这个背部总线上挂接了所有的端口,通过内部交换矩阵,就能够把数据包直接而迅速地传送到目的节点而非所有节点, 这样就不会浪费网络资源,从而产生非常高的效率。
如 阿里云的 NAT 为阿里云中使用的网关路由,看下 阿里云 NAT 路由的过程:
https://www.aliyun.com/product/network/nat
互联网访问的时候,先通过公网请求的端侧到达 NAT 网关,网关做具体的路由,然后将请求转发到指定的交换机,交换机再将请求的包传输到 具体的服务器;路由器中配置下一步请求的目标ip地址;
2.使用 route 查看windows 和linux 中的路由配置
windows 系统中 通过 route print 命令查看本地的路由配置:
发现本地的路由配置中已经配置了大量的路由条目,并区分了ipv4 路由信息和 ipv6 路由信息;
linux 查看路由信息:
route 的使用可以看这篇文章:linux route 命令
3.使用 tracert 和 traceroute 查看访问时经过的路由条目
在window 中使用 tracert 查看 访问 114.114.114.114 时经过的路由信息:
tracert命令用来显示数据包到达目标主机所经过的路径(路由器),并显示到达每个节点(路由器)的时间。 用于确定 ip 数据报访问目标所采取的路径
tracert 命令支持多种选项,如下所示。
tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name -d 指定不将 ip 地址解析到主机名称。 -h maximum_hops 指定跃点数以跟踪到称为 target_name 的主机的路由。 -j host-list 指定 tracert 实用程序数据包所采用路径中的路由器接口列表。 -w timeout 等待 timeout 为每次回复所指定的毫秒数。 target_name 目标主机的名称或 ip 地址。
linux 中 使用 traceroute 查看访问 114.114.114.114 时经过的路由信息:
首先需要安装 traceroute 命令:
yum install -y traceroute
然后执行 traceroute 114.114.114.114 ,查看路由信息: