ip route get ip地址 应用案例

应用场景

在做虚拟化实验用的虚拟机和实际的ECS云主机一般都会有多个网卡,网络的联通性是经常碰到的问题。比如在一个VM上有3个网卡,分别为ens160(和寄主机进行桥接的网卡10.0.0.128)、ens224(连接仅主机网络10.0.0.0/24的网卡10.0.0.128)和docker0(容器化平台的虚拟网卡)。当我想知道连接Internet网络的路由是经过那个网卡时,我们可以用ip route get ip地址来实现。

ip route get ip地址的使用

当我要获得连接qq.com的路由路径时,操作步骤如下:

STEP:ping -c1 qq.com

通过ping 1次qq.com获得qq.com域名的ip地址,因为ip route 需要的是ip地址。

[root@localhost system-connections]# ping -c1 qq.com
PING qq.com (61.129.7.47) 56(84) bytes of data.
64 bytes from 61.129.7.47 (61.129.7.47): icmp_seq=1 ttl=128 time=35.7 ms

--- qq.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 35.685/35.685/35.685/0.000 ms

STEP:ip route get 61.129.7.47

[root@localhost system-connections]# ip route get 61.129.7.47

61.129.7.47 via 192.168.1.2 dev ens160 src 192.168.1.128 uid 0

cache

STEP:ip route get IP地址返回数据的解释

当你运行 ip route get 61.129.7.47 命令时,它会返回与目标IP地址 61.129.7.47 相关的路由信息。以下是可能的返回值及其解释:

  • 如果返回 61.129.7.47 dev <网络接口> src <源IP地址>,这意味着目标IP地址是直接连接到指定的网络接口上,并且源IP地址是指定的源IP地址。
  • 如果返回 unreachable,这意味着目标IP地址是不可达的,无法通过任何已知的路由路径到达。
  • 如果返回 local <目标IP地址> dev lo src <源IP地址>,这意味着目标IP地址是本地主机的IP地址,通过本地回环接口 (lo) 可以直接访问。
  • 如果返回 broadcast <目标IP地址> dev <网络接口> src <源IP地址>,这意味着目标IP地址是一个广播地址,可以通过指定的网络接口进行广播。
  • 如果返回 blackhole,这意味着目标IP地址是黑洞路由,所有传入的数据包都会被丢弃。
  • 如果返回 prohibit,这意味着目标IP地址是禁止路由,所有传入的数据包都会被拒绝。
  • 如果返回 nat <目标IP地址> via <下一跳> dev <网络接口> src <源IP地址>,这意味着目标IP地址需要通过网络地址转换 (NAT) 来访问,通过指定的下一跳和网络接口进行转发。
  • 如果返回 via <下一跳> dev <网络接口> src <源IP地址>,这意味着目标IP地址需要通过指定的下一跳和网络接口进行转发。

这些是一些常见的返回值和对应的解释,实际返回值可能会有所不同,具体取决于你的网络配置和路由表设置。

虚拟机所在寄主机的"虚拟网络"设置和"虚拟网关"设置图示

相关推荐
Lin桐1 小时前
②Modbus TCP转Modbus RTU/ASCII网关同步采集无需编程高速轻松组网
linux·网络协议·tcp/ip·网络安全·缓存·信息与通信·信号处理
anguruanjian1 小时前
安固软件指南:确保外发文件安全的全面策略
服务器·网络·安全·企业微信·安固软件
esmember2 小时前
电路研究9.3.1——合宙Air780EP中的AT开发指南:TCP 使用 SSL 示例
网络·at指令·tcp 使用 ssl 示例
自由鬼2 小时前
免费开源抓包工具Wireshark介绍
运维·服务器·网络·测试工具·网络安全·wireshark
真正的醒悟3 小时前
SSL-VPN案例
网络·windows·ssl
愚公搬代码5 小时前
【愚公系列】《Python网络爬虫从入门到精通》045-Charles的SSL证书的安装
网络·爬虫·python·网络协议·ssl
不脱发的猴子8 小时前
Wireshark使用教程
网络·测试工具·wireshark
EasyCVR10 小时前
EasyRTC嵌入式视频通话SDK的跨平台适配,构建web浏览器、Linux、ARM、安卓等终端的低延迟音视频通信
android·arm开发·网络协议·tcp/ip·音视频·webrtc
小羊在奋斗10 小时前
【Linux网络】NAT技术、DNS系统、五种IO模型
linux·网络·智能路由器
暴躁的小胡!!!12 小时前
Linux权限维持之协议后门(七)
linux·运维·服务器·网络·安全