NetBSD串口网关

NetBSD串口网关

我有一台旧的东芝 Satellite 4015CDT,配备 Pentium II MMX、32MB RAM、4GB HDD。它还有一个 USB 1.0 端口、并行和串行端口、一个 3.5 英寸软盘驱动器和一个 CD-ROM 驱动器(几乎没电了)。此外,机器上还安装了 NetBSD 5.1。*

是否可以通过串口将NetBSD机器连接到Windows机器(Windows XP),以便Windows机器作为NetBSD机器访问Internet的网关?如果是这样,怎么办?

如果有什么帮助的话,这里是 NetBSD 文档中有关串行连接的页面。

我将非常感谢任何有关此事的帮助。提前致谢。

**这与中的计算机是同一台计算机这里.*

答案1

我已经在 Linux 上完成了这个。我有一台没有以太网端口的旧笔记本电脑,也没有 USB 以太网端口或 PCMCIA 以太网适配器,但它有一个串行端口。您需要一根空调制解调器电缆,并且您的 NetBSD 需要运行 PPP 守护程序(在 Linux 上称为pppd)。

然后将 Windows XP 中的串行端口设置为调制解调器。您需要进入控制面板中的“电话和调制解调器选项”,根据您要使用的COM端口创建一个新的调制解调器,并相应地设置波特率等选项。然后,您可以使用“调制解调器”作为 Internet 接口,并且可以启用 Internet 连接共享和所有这些好东西。

唯一需要注意的是,Windows 认为它​​正在拨打调制解调器,因此它会将调制解调器命令发送到pppd通常不会预期的串行端口。但是您可以使用聊天脚本来pppd基本上告知pppd假装成 Windows 的调制解调器。

完成这一切之后,您将拥有一个接口ppp0或任何 NetBSD 所称的接口,通过以 115Kbps 的惊人速度运行的 Windows Internet 连接共享转发。

基本上,这个脚本片段是我在 Linux 机器上运行的内容的本质。 $LOCAL_IP 是我的路由器/DNS 服务器的 IP 地址,即 10.0.0.1/24,$LOCAL_NET_MASK 是它的网络掩码,在这种情况下为 255.255.255.0。

需要同一子网上的两个连续的IP地址才能形成PPP所依赖的“隧道”。这就是您在 NetBSD 机器上的 IP 地址。

PPP_IFACE_ADDRESS="10.0.0.40:10.0.0.41"
echo "link: $TTY, IP interface: $PPP_IFACE_ADDRESS"
pppd 115200 netmask $LOCAL_NET_MASK crtscts connect 'chat -v -f /etc/admin/network/winclient.chat' lock local ms-dns $LOCAL_IP ms-wins $LOCAL_IP persist proxyarp silent $PPP_IFACE_ADDRESS $TTY noauth

winclient.chat包含以下文本:

TIMEOUT 3600
CLIENT CLIENTSERVER\c

末尾有一个额外的换行符。

但这是Linux。不知道pppdNetBSD 是否也能以同样的方式工作。

相关内容