在Linux中创建TUN设备时,在我的计算机上创建的TUN设备具有以下标志:
<POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP>显然,多播列在那里,但没有广播。因为TUN设备处理IP数据包,所以处理TUN设备文件的程序应该决定如何处理发送到广播地址的数据包。此外,即使在TUN设备上没有列出广播标志,应用程序也可以将数据包发送到TUN设备上的广播地址。
那么为什么TUN设备没有广播标志呢?
编辑:很抱歉搞混了。我所说的TUN设备并不是指OpenVPN用于隧道的具体方式。我指的是Linux (或其他Unix)中的TUN设备,如下所述:http://www.kernel.org/doc/Documentation/networking/tuntap.txt
发布于 2012-10-31 15:58:13
关键是它是“点点”..。您的计算机直接连接到远程端,任何实际广播都必须由远程端生成。当然,如果您将数据包发送到广播地址,则远程终端肯定会传递它,并且还会将发送到广播地址的任何数据包传回给您。
相反,如果您有多个工作站直接插入一个交换机,您的机器就可以发送一个广播,并且不需要任何gateway将该广播重新传输到其他对等端。
发布于 2022-12-13 18:54:32
这也发生在我身上。我正在实现tinc,我们需要通过'tun0‘接口(由tinc创建的虚拟接口)启用SAMBA。
在我的服务器中,我们有两个物理接口:一个用于SAMBA和其他web服务,另一个用于允许WinXP客户端(SMB1)的对接器中的SAMBA。
长话短说,在tinc.conf define: Mode = switch (本例中)中,将使用标志创建'tun0‘接口。我确信OpenVPN也有类似的选择。
https://serverfault.com/questions/444063
复制相似问题