8. 配置 NET/ROM 端口

NET/ROM 协议依赖于您创建的 AX.25 端口并使用它们。NET/ROM 协议建立在 AX.25 协议之上。要在 AX.25 接口上配置 NET/ROM,您必须配置两个文件。一个文件描述 NET/ROM 接口,另一个文件描述哪些 AX.25 端口将承载 NET/ROM。您可以配置多个 NET/ROM 端口,每个端口都有自己的呼号和别名,每个端口都应用相同的程序。

8.1. 配置/etc/ax25/nrports

第一个是/etc/ax25/nrports文件。此文件描述 NET/ROM 端口的方式与/etc/ax25/axports文件描述 AX.25 端口的方式非常相似。您希望创建的每个 NET/ROM 设备都必须在/etc/ax25/nrports文件中有一个条目。通常,一台 Linux 机器只会配置一个 NET/ROM 设备,该设备将使用许多定义的 AX.25 端口。在某些情况下,您可能希望像 BBS 这样的特殊服务拥有单独的 NET/ROM 别名,因此您将创建多个。

此文件的格式如下

name callsign  alias  paclen   description

其中

name

是您希望用来引用端口的文本名称。

callsign

是来自此端口的 NET/ROM 流量将使用的呼号。请注意,这不是用户应连接以访问节点样式接口的地址。(节点程序稍后介绍)。此呼号/SSID 应该是唯一的,并且不应出现在/etc/ax25/axports/etc/ax25/nrports文件中的任何地方。

alias

是此端口将分配的 NET/ROM 别名。

paclen

是此端口传输的 NET/ROM 帧的最大大小。

description

是端口的自由文本描述。

一个例子看起来像这样

netrom  VK2KTJ-9        LINUX   236     Linux Switch Port

此示例创建一个 NET/ROM 端口,NET/ROM 网络的其余部分将其称为 `LINUX:VK2KTJ-9'.

此文件由诸如 call 程序之类的程序使用。

8.2. 配置/etc/ax25/nrbroadcast

第二个文件是/etc/ax25/nrbroadcast文件。此文件可能包含多个条目。通常,您希望允许在其上进行 NET/ROM 流量的每个 AX.25 端口都有一个条目。

此文件的格式如下

axport min_obs def_qual worst_qual verbose

其中

axport

是从/etc/ax25/axports文件中获取的端口名称。如果您在/etc/ax25/nrbroadcasts中没有端口的条目,则意味着不会发生 NET/ROM 路由,并且该端口的任何接收到的 NET/ROM 广播都将被忽略。

min_obs

是端口的最小过时值。

def_qual

是端口的默认质量。

worst_qual

是端口的最差质量值,任何低于此质量的路由都将被忽略。

verbose

是一个标志,用于确定是否将从此端口发生完整的 NET/ROM 路由广播,还是仅发生通告节点本身的路由广播。

一个例子看起来像这样

radio    1       200      100         1

8.3. 创建 NET/ROM 网络设备

完成两个配置文件后,您必须以与 AX.25 设备相同的方式创建 NET/ROM 设备。这次您使用 nrattach 命令。nrattach 的工作方式与 axattach 命令完全相同,只是它创建名为 `nr[0-9]` 的 NET/ROM 网络设备。同样,第一次使用 nrattach 命令时,它会创建 `nr0` 设备,第二次它会创建 `nr1` 网络设备等。要为我们定义的 NET/ROM 端口创建网络设备,我们将使用

# nrattach netrom

此命令将启动 NET/ROM 设备 (nr0) 名为netrom,并使用/etc/ax25/nrports文件中指定的详细信息进行配置。

8.4. 启动 NET/ROM 守护进程

Linux 内核执行所有 NET/ROM 协议和交换,但不管理某些功能。NET/ROM 守护进程管理 NET/ROM 路由表并生成 NET/ROM 路由广播。您可以使用以下命令启动 NET/ROM 守护进程

# /usr/sbin/netromd -i

您应该很快看到/proc/net/nr_neigh文件充满了有关您的 NET/ROM 邻居的信息。

记住将/usr/sbin/netromd命令放在您的 rc 文件中,以便每次重新启动时自动启动它。

8.5. 配置 NET/ROM 路由。

您可能希望为特定主机配置静态 NET/ROM 路由。nrparms 命令使您能够执行此操作。同样,man 页面提供了完整的描述,但一个简单的例子可能是

# /usr/sbin/nrparms -nodes VK2XLZ-10 + #MINTO 120 5 radio VK2SUT-9

此命令将设置到#MINTO:VK2XLZ-10的 NET/ROM 路由,通过邻居VK2SUT-9在我的名为 `radio'.

的 AX.25 端口上。您也可以使用 nrparms 命令手动为新邻居创建条目。例如

# /usr/sbin/nrparms -routes radio VK2SUT-9 + 120

此命令将创建VK2SUT-9作为质量为120的 NET/ROM 邻居,这将是锁定的,并且不会自动删除。