MAC server

RouterOS 中的 MAC server 部分用于配置 MAC Telnet、WinBox 和 Ping 服务器,以便在路由器没有 IP 地址的情况下进行访问。它允许把访问限制到特定接口,并提供管理会话的工具,示例展示了如何启用/禁用 MAC Telnet 以及如何通过客户端连接。

MAC server

MAC server 部分允许你在 RouterOS 设备上配置 MAC Telnet Server、MAC WinBox Server 和 MAC Ping Server。

MAC Telnet 用于访问没有设置 IP 地址的路由器。它的工作方式与 IP telnet 一样。MAC telnet 只能在两台 MikroTik RouterOS 路由器之间使用。

MAC WinBox 用于通过 MAC 地址为路由器提供 WinBox 访问。

MAC Ping 用于允许对路由器的 MAC 地址进行 MAC ping。

信息

MAC-server 设置包含在 "system" 包中。

MAC Telnet Server

可以把 MAC Telnet 访问设置到属于接口列表的特定接口:

[admin@device] /tool/mac-server/set allowed-interface-list=listBridge
[admin@device] /tool/mac-server/print
  allowed-interface-list: listBridge

在上面的示例中,MAC Telnet 被配置为使用接口列表 "listBridge",因此 MAC Telnet 只能通过属于该列表的接口工作(你可以向列表中添加多个接口)。

要禁用 MAC Telnet 访问,请执行以下命令(把 "allowed-interface-list" 设为 "none"):

[admin@device] /tool/mac-server/set allowed-interface-list=none
[admin@device] /tool/mac-server/print
  allowed-interface-list: none

你可以使用以下命令检查活动的 MAC Telnet 会话(设备接受的会话):

[admin@device] > /tool/mac-server/sessions/print
Columns: INTERFACE, SRC-ADDRESS, UPTIME
#  INTERFACE  SRC-ADDRESS        UPTIME
0  ether5     64:D1:54:FB:E3:E6  17s 

MAC Telnet 客户端

当 MAC Telnet Server 启用后,你可以使用另一台 RouterOS 设备通过 mac-telnet 客户端连接到该服务器:

[admin@device2] > tool mac-telnet B8:69:F4:7F:F2:E7    
Login: admin
Password: 
Trying B8:69:F4:7F:F2:E7...
Connected to B8:69:F4:7F:F2:E7

  MMM      MMM       KKK                          TTTTTTTTTTT      KKK
  MMMM    MMMM       KKK                          TTTTTTTTTTT      KKK
  MMM MMMM MMM  III  KKK  KKK  RRRRRR     OOOOOO      TTT     III  KKK  KKK
  MMM  MM  MMM  III  KKKKK     RRR  RRR  OOO  OOO     TTT     III  KKKKK
  MMM      MMM  III  KKK KKK   RRRRRR    OOO  OOO     TTT     III  KKK KKK
  MMM      MMM  III  KKK  KKK  RRR  RRR   OOOOOO      TTT     III  KKK  KKK

  MikroTik RouterOS 7.1rc3 (c) 1999-2021       https://www.mikrotik.com/

Press F1 for help
  
[admin@device] > 

根据你的设置更改 MAC 地址,你应该就能进入服务器的 CLI(如上例所示)。

提示

默认情况下,MAC Telnet 客户端会尝试通过所有活动接口到达目的地。这可能会产生不需要的流量。要把 MAC Telnet 客户端限制到特定接口,请使用 interface 属性(从 RouterOS v7.22 起可用)。例如:/tool/mac-telnet 00:11:22:33:44:55 interface=ether1

MAC Scan

MAC scan 功能会发现给定网络上所有支持 MAC telnet 协议的设备。该命令要求你选择要扫描的接口:

[admin@Sw_Denissm] > /tool/mac-scan interface=all           
MAC-ADDRESS       ADDRESS                AGE
B8:69:F4:7F:F2:E7 192.168.69.1            26
2C:C8:1B:FD:F2:C3 192.168.69.3            56

在上面的示例中,选择了所有接口,扫描会无限运行,除非(按 "q")停止。

你还可以添加一个 "duration" 参数,用于指定扫描应持续多长时间:

[admin@Sw_Denissm] > /tool/mac-scan interface=all duration=1
MAC-ADDRESS       ADDRESS                AGE
B8:69:F4:7F:F2:E7 192.168.69.1            48
2C:C8:1B:FD:F2:C3 192.168.69.3            17

在上面的示例中,我们把 "duration" 参数设为 1 秒。

MAC WinBox Server

与 MAC Telnet 一样,可以把 MAC WinBox 访问设置到属于接口列表的特定接口:

[admin@device] > /tool/mac-server/mac-winbox/set allowed-interface-list=listBridge 
[admin@device] > /tool/mac-server/mac-winbox/print                   
  allowed-interface-list: listBridge

在上面的示例中,MAC WinBox 访问被配置为使用接口列表 "listBridge",因此 MAC WinBox 只能通过属于该列表的接口工作。

要禁用 MAC WinBox 访问,请执行以下命令(把 "allowed-interface-list" 设为 "none"):

[admin@device] > /tool/mac-server/mac-winbox/set allowed-interface-list=none
[admin@device] > tool mac-server mac-winbox print                   
  allowed-interface-list: none

MAC Ping Server

MAC Ping Server 可以设为 "disabled" 或 "enabled":

[admin@device] > /tool/mac-server/ping/print
  enabled: yes

你可以借助以下命令启用或禁用 MAC ping(enable=yes → 启用该功能;enable=no → 禁用该功能):

[admin@device] > /tool/mac-server/ping/set enabled=yes
[admin@device] > /tool/mac-server/ping/set enabled=no

当 MAC Ping 启用后,同一广播域中的其他主机可以使用 ping 工具 ping 该 MAC 地址。例如,你可以执行以下命令检查 MAC ping 结果:

[admin@device] > /ping 00:0C:42:72:A1:B0
HOST                                    SIZE  TTL TIME  STATUS                                         
00:0C:42:72:A1:B0                       56        0ms  
00:0C:42:72:A1:B0                       56        0ms  
    sent=2 received=2 packet-loss=0% min-rtt=0ms avg-rtt=0ms max-rtt=0ms 

警告

如果你禁用了 MAC server ping 功能,该主机的 ARP ping 功能也会被禁用。

提示

默认情况下,MAC ping 会尝试通过所有活动接口到达目的地。如果目的地可通过多个接口到达,这可能会产生不需要的流量和重复回复。要把 MAC ping 限制到特定接口,请使用接口选择器(在 MAC 地址后附加 % 加接口名)。例如:/ping 00:11:22:33:44:55%ether1