上次写了学校登录VPN后访问不了内网, 这段时间一直没有想到解决方法, 昨晚突发奇想想修改默认路由表, 于是就在远程主机操作了一下 , 由于提示default 重复 , 于是很自然的想删除重建, 于是 无脑行为开始了.

1. 当时我看到的路由表是这样的

sudo route

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.108.112.1 0.0.0.0 UG 100 0 0 eno1

2. 我无脑的删除了这条记录

sudo route del default

于是 我的ssh 断了…

假设这有个瞠目结舌的表情包

3. 开始想解决方法(我并不知道这个服务器在哪里)

3.1 . 首先想到arp

sudo ARP

Address                  HWtype  HWaddress           Flags Mask            Iface
10.108.112.137           ether   6c:ae:8b:29:36:da   CM                    eno1

==此处已知mac地址==

3.2 . 想到ssh 能否用mac地址来连接

google 发现
有人这样
sudo arp -s 192.168.1.200 00:35:cf:56:b2:2g temp && ssh root@192.168.1.200 使用mac地址ssh

测试后ssh 无动于衷

==失败==

3.3 . 想到用 ipv6 扫描

看了下nmap 支持ipv6 于是 想着扫描, 结果ipv6 是2的64 个扫描域

==失败==

3.4 . Google中发现有 邻居发现协议NDP(救命稻草)

linux 下

sudo ip neigh show
fe80::5639:dfff:fece:e9e7 dev eno1 lladdr 54:39:df:ce:e9:e7 router STALE

发现没有我要的 mac地址
如果这个邻居发现不能广播询问周围的ipv6 伙伴 , 那这个就是无意义的

查看ip neigh 命令

发现有个发现 ip neigh show proxy
执行后什么没什么动静
想到可能会像ipv4 那样广播询问who is xxx

于是wireshark 抓包

过滤条件 ipv6

enter description here

发现许多邻居返回ICMPVv6的arp包

再过滤
eth.addr == 00:00:5e:00:53:00
发现服务器返回了ipv6 地址

==胜利的曙光已经不远==

4. 最后的最后

ssh 链接上 ipv6 的服务器

添加默认路由表

sudo route add default 10.108.112.1

==完美解决==

5. 参考