Windows系统中添加路由表的时候,如果命令输错了,控制台会显示出一个正确的例子:
route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
稍有常识的人都知道如果掩码、网关、Metric应该咋设置。唯独这个IF(接口索引/接口号),它的值应该在哪里查询呢?
- 直接在路由表查
控制台执行route print
后出现的一大串信息中,开头就有这么一堆东西(别问我为什么是日文):
===========================================================================
インターフェイス一覧
18...68 84 7e 87 dc 7d ......Intel(R) Ethernet Connection (4) I219-LM
28...24 ee 9a a5 b0 22 ......Intel(R) Dual Band Wireless-AC 8265
10...7c c2 c6 18 62 40 ......Realtek RTL8188EU Wireless LAN 802.11n USB 2.0 Network Adapter
17...24 ee 9a a5 b0 26 ......Bluetooth Device (Personal Area Network)
1...........................Software Loopback Interface 1
===========================================================================
第一列的数字就是接口索引。
- 查ARP表
执行arp -a
命令,显示示例如下:
インターフェイス: 172.18.134.68 --- 0xa
インターネット アドレス 物理アドレス 種類
172.18.134.70 34-76-c5-e9-84-34 動的
239.255.255.250 01-00-5e-7f-ff-fa 静的
インターフェイス: 10.145.66.192 --- 0x1c
インターネット アドレス 物理アドレス 種類
10.145.66.1 cc-98-91-3a-fd-73 動的
239.255.255.250 01-00-5e-7f-ff-fa 静的
255.255.255.255 ff-ff-ff-ff-ff-ff 静的
每个表第一行IP地址后面跟着的16进制数就是接口索引。这个方法的缺点是无法特定接口名称。
- 专用查询指令
执行netsh int ipv4 show interfaces
,显示示例如下:
Idx Met MTU 状態 名前
--- ---------- ---------- ------------ ---------------------------
1 75 4294967295 connected Loopback Pseudo-Interface 1
28 45 1500 connected Wi-Fi
18 5 1500 disconnected イーサネット
17 65 1500 disconnected Bluetooth ネットワーク接続
10 555 1500 connected Wi-Fi 2
谁是索引不用我说了吧。