心理

当前位置 /首页/完美生活/心理/列表

tun/tap创建虚拟网卡后怎么获取ip和mac

tun/tap创建虚拟网卡后怎么获取ip和mac

关系如下:

eth (模拟出来的网卡) fd (控制用字符设备)

系统通过eth?发送出来的数据,将到达fd, 可以从fd把数据读出来。

往fd写入的数据将到达系统的eth? 该数据包被解析成一个数据链路的包,再上去往TCP/IP的处理流程走。

ssh 的网卡通过实现的如下:

server:ethserver:fdclient:fdclient:eth

其实这个跟伪终端很类似。有不明白的地方建议读读关于伪终端的介绍作为参考。

《FreeBSD设计与实现》里面有对关于为终端比较深入的讨论。

另外你提取的MAC数据可能是错误的,因为某些情况下,第一个字节直接是AF_INET之类的,第二个字节才是MAC的开始。具体的需要看man了。

TAG标签:网卡 mac IP tuntap 虚拟 #