Chinaunix

标题: 嵌入式linux tun问题 [打印本页]

作者: orangewu    时间: 2013-11-26 22:12
标题: 嵌入式linux tun问题
在ubuntu下编写了一个tun虚拟接口的网络程序,配置tun接口地址为2001::1/64,简单对其进行功能测试,处理ICMPv6的ECHO包,并回应以ECHO REPLY。
ubuntu下ping测试能正常工作,移植到嵌入式ARM linux上却不行,程序显示收到tunnel的ip包,并成功处理后发回给tunnel,但ping程序就是收不到REPLY,
通过ifconfig查看tun接口情况,收包个数上显示接收了数据,可为什么没给ping程序,好像tunnel没能正常将ip报文给内核TCP/IP协议栈。

希望各位大侠帮小弟指点指点!!!感激不尽




if((size = read(infd, uip.inbuf, 2000)) == -1)
        err(1, "tun_to_serial: read");
memcpy(uip.outbuf,uip.inbuf,size);
memcpy(&uip.outbuf[8],&uip.inbuf[24],16);
memcpy(&uip.outbuf[24],&uip.inbuf[8],16);
uip.outbuf[40]=129;
uip.outbuf[42]=uip.outbuf[42]-1;
if(write(infd, uip.outbuf, size) != size) {
        err(1, "serial_to_tun: write");
}

QQ截图20131126221147.jpg (28.03 KB, 下载次数: 17)

ifconfig

ifconfig

作者: orangewu    时间: 2013-11-26 22:14
PS:在ARM板上已经insmod tun.ko




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2