路由命令

ip route add

ip route add default via 10.21.65.50 dev seth_lte0 table 200
这个命令 添加了一条默认路由,将所有没有明确目标的流量发送到 网关 10.21.65.50。
使用 seth_lte0 接口 来传输这些数据。
这条路由被添加到 table 200 路由表 中,而不是默认的 main 路由表。

解释:

  • default 表示默认路由,即默认网关。
    默认路由是用来处理所有没有明确指定目标的流量。它通常是指向默认网关的路由。
    所有的 未知目标 流量(即,IP 地址不在路由表中明确列出的流量)都会通过这个路由发送

  • via 是指路由的下一跳地址。
    这指定了流量应该通过哪个网关转发。这里的 10.21.65.50 是目标地址,也就是数据包发送的下一跳网关的 IP 地址。
    所有匹配这条路由的流量将会经过这个网关

  • dev 是设备的缩写,指的是网络接口设备。
    这里的 seth_lte0 是一个网络接口的名字,通常这是一个 LTE 接口,表示与移动网络连接的设备接口。
    数据包将通过这个接口发送到网关 10.21.65.50。你需要确保该接口(例如,seth_lte0)是已经配置并启用的。

  • table 指定路由表的编号。通常默认的路由表是 main,但你可以使用自定义的路由表。
    200 是你自定义的路由表的 ID。路由表 ID 是用来区分不同路由表的标识符

ip addr show seth_lte0

检查seth_lte0接口状态

ip link set dev seth_lte0 up

启动接口seth_lte0

root@sp9820e_1h10ll:/etc # ip link set dev seth_lte0 up
root@sp9820e_1h10ll:/etc # ip addr show seth_lte0
5: seth_lte0: <NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/[530] 8a:3a:44:32:20:77 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::f2a3:3e94:8ae0:ae17/64 scope link
       valid_lft forever preferred_lft forever
root@sp9820e_1h10ll:/etc #

ip route show table 200

查看路由表

1|root@sp9820e_1h10ll:/etc # ip route show table 200
default via 10.10.145.139 dev seth_lte1
root@sp9820e_1h10ll:/etc #

ip rule show

查看所有路由规则

root@sp9820e_1h10ll:/etc # ip rule show
0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default
root@sp9820e_1h10ll:/etc #
  • from all lookup local (规则编号 0)
    规则说明:这条规则表示,来自任何源的流量(from all)首先会在 local 路由表中查找路由。
    作用:local 路由表主要用于系统内部的网络配置,比如本地回环地址(127.0.0.1)等。该路由表用于处理本地地址和设备间的通信
  • from all lookup main (规则编号 32766)
    规则说明:这条规则表示,来自任何源的流量(from all)将在 main 路由表中查找路由。
    作用:main 路由表是系统默认的路由表,通常包含了所有用于正常网络通信的路由规则。大多数的路由都在这个表中,比如默认路由和其他网络接口的路由。
  • from all lookup default (规则编号 32767)
    规则说明:这条规则表示,来自任何源的流量(from all)会在 default 路由表中查找路由。
    作用:default 路由表通常会用于无法通过其他路由表处理的流量,通常是系统无法找到合适路由时的“备选”路由表。该规则的编号是最高的(32767),表示它是最后一个会被检查的路由表。
  • 路由规则基本是按照优先级从小到大来查找的。如果一个流量没有在前面的表(如 local 和 main)中找到匹配的路由,它会最终查找 default 路由表。
    当前系统并没有自定义的路由规则,它使用默认的路由表(main 和 default)来处理网络流量。
    如果你希望流量根据特定的接口(比如 seth_lte0 或 seth_lte1)走不同的路由表,你需要通过添加规则来实现。

tcpdump抓网络包

adb shell tcpdump -i any -p -s0 -w /sdcard/capture2.pcap
adb pull /sdcard/capture.pcap .
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。