社区
Linux_Kernel
帖子详情
求助!无法接收源地址为127.0.0.1的ip包
hansun_zhou
2012-10-09 12:21:23
最近碰到一个郁闷的问题,wireshark可以抓到数据包,可是上层应用却收不到,分析了一下,发现发过来的IP包的源地址是127.0.0.1,估计应该是这个原因。
做了一个小实验,用原始套接字,修改源地址为127.0.0.1的数据包,发给其它的机器,的确收不到,是不是内核的网络协议栈在哪里把这个过滤掉了啊???
内核代码看了半天,头都大了,没有一点头绪。有没有大侠能给指点一下啊!!!
谢谢
2.6的内核,
...全文
459
7
打赏
收藏
求助!无法接收源地址为127.0.0.1的ip包
最近碰到一个郁闷的问题,wireshark可以抓到数据包,可是上层应用却收不到,分析了一下,发现发过来的IP包的源地址是127.0.0.1,估计应该是这个原因。 做了一个小实验,用原始套接字,修改源地址为127.0.0.1的数据包,发给其它的机器,的确收不到,是不是内核的网络协议栈在哪里把这个过滤掉了啊??? 内核代码看了半天,头都大了,没有一点头绪。有没有大侠能给指点一下啊!!! 谢谢 2.6的内核,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hansun_zhou
2012-10-10
打赏
举报
回复
真个环境是这样的,服务器那端发过来一个组播流,这个组播流的源地址被服务器设置成了127.0.0.1。
我用winxp的机器可以收到组播数据,但是win7,linux2.6都收不到该数据包,在linux下,用原始套接字接收,是可以收到的(wireshark估计也是这样的)。看了一下,数据包的源地址为127.0.0.1其它一切都正常。
如果目的地址是127.0.0.1,会被路由到本地的回环接口这个好理解。可是目的地址是个组播地址,源地址是127.0.0.1,不知道内核中是怎么处理的?
正常的socket收不到数据,应该是被网络协议栈过滤掉了,看了kernel的源码,可是却找不到在哪儿被drop了,希望能得到大家的帮助。谢谢。
pottichu
2012-10-10
打赏
举报
回复
127.0.0.1 是本地回环, 只能本地发,本地收的。
另外,你还要看看 lo 设备是否已经启用了。
root_jli
2012-10-10
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
这个是本地环回接口
[/Quote]
++
"wireshark可以抓到数据包,可是上层应用却收不到"怎么抓的?
morris88
2012-10-09
打赏
举报
回复
这个是本地环回接口
tommwq
2012-10-09
打赏
举报
回复
有包过来,网络层应该没有问题。仔细检查下应用层。内核出现这种问题的概率不大。
hansun_zhou
2012-10-09
打赏
举报
回复
应该不是,在接收端用wireshark是可以抓包抓到的。数据包应该已经发过来了。
buyong
2012-10-09
打赏
举报
回复
路由器给过滤掉了把
【178】HCIE RS 3.0诊断考题讲解
诊断是HCIE考试中重要的一板块,本课程围绕这一板块进行讲解,其中范文展示如下: 关于“AR29 loopback 0不能访问AR28 loopback0”的诊断报告一、故障根因。 经过分析,“AR29 loopback 0不能访问AR28 loopback0”的原因是,LSW6连接AR29和AR28的接口错误划分进不同的vlan,导致AR29和AR28不在一个广播域。 二、故障分析。 步骤2-1:故障现象重现,AR29使用loopback0作为源
IP
地址去ping AR28的loopback0,命令: ping -a 10.5.1.29 10.5.1.28 PING 10.5.1.28: 56 data bytes, press CTRL_C to break Request time out Request time out Request time out Request time out Request time out --- 10.5.1.28 ping statistics --- 5 packet(s) transmitted 0 packet(s) received 100.00% packet loss 上面结果表明,确实存在故障,由于AR29和AR28之间运行OSPF协议,所以下一步将在AR29进一步查看路由表以确定是否存在AR28 loopback0接口的
ip
地址的路由信息。 步骤2-2:在AR29上检查路由表,以确定是否存在AR28 loopback0接口的
ip
地址的路由信息。查看命令及结果如下: display
ip
routing-table Route Flags: R - relay, D - download to fib------------------------------------------------------------------------------Routing Tables: Public Destinations : 12 Routes : 12 Destination/Mask Proto Pre Cost Flags NextHop Interface 10.5.1.29/32 Direct 0 0 D
127.0
.
0.1
LoopBack0 10.5.1.33/32 OSPF 10 1 D 10.5.233.33 GigabitEthernet0/0/1 10.5.128.0/24 Direct 0 0 D 10.5.128.29 GigabitEthernet0/0/0 10.5.128.29/32 Direct 0 0 D
127.0
.
0.1
GigabitEthernet0/0/0 10.5.128.255/32 Direct 0 0 D
127.0
.
0.1
GigabitEthernet0/0/0 10.5.233.0/24 Direct 0 0 D 10.5.233.29 GigabitEthernet0/0/1 10.5.233.29/32 Direct 0 0 D
127.0
.
0.1
GigabitEthernet0/0/1 10.5.233.255/32 Direct 0 0 D
127.0
.
0.1
GigabitEthernet0/0/1
127.0
.0.0/8 Direct 0 0 D
127.0
.
0.1
InLoopBack0
127.0
.
0.1
/32 Direct 0 0 D
127.0
.
0.1
InLoopBack0127.255.255.255/32 Direct 0 0 D
127.0
.
0.1
InLoopBack0255.255.255.255/32 Direct 0 0 D
127.0
.
0.1
InLoopBack0 上面结果表明,AR29没有去往AR28 loopback0的路由。所以下一步将检查AR29和AR28的OSPF邻居关系。 步骤2-3:在AR29上检查AR29和AR28的OSPF邻居关系。检查命令及结果如下: display ospf peer brief OSPF Process 1 with Router ID 10.5.1.29 Peer Statistic Information ---------------------------------------------------------------------------- Area Id Interface Neighbor id State 0.0.0.2 GigabitEthernet0/0/1 10.5.1.33 Full ---------------------------------------------------------------------------- 上面结果表明,AR29与AR28不存在OSPF邻居关系。所以初步判断OSPF配置错误,需要进一步检查确认。 步骤2-4:由于AR27与AR28 AR29处于同一OSPF区域中,所以可以通过AR27的测试结果来判断AR28配置是否正确,测试及结果如下:[AR27]display ospf peer brief //查看OSPF邻居 OSPF Process 1 with Router ID 10.5.1.27 Peer Statistic Information ---------------------------------------------------------------------------- Area Id Interface Neighbor id State 0.0.0.0 GigabitEthernet0/0/0 10.5.1.28 Full ----------------------------------------------------------------------------[AR27]dis
ip
routing-table | in 10.5.1.28 //查看OSPF路由Route Flags: R - relay, D - download to fib------------------------------------------------------------------------------Routing Tables: Public Destinations : 19 Routes : 19 Destination/Mask Proto Pre Cost Flags NextHop Interface 10.5.1.28/32 OSPF 10 1 D 10.5.128.28 GigabitEthernet0/0/0 [AR27] 上面结果表明,AR27与AR28之间正常建立OSPF邻居,并且AR27能学习到AR28 loopback0的路由,说明AR28的OSPF配置正确,下一步将对比AR27与AR29的OSPF配置,来进一步判断AR29的OSPF配置是否正确。 步骤2-5:在AR27和AR29上使用命令display ospf brief检查对比AR29的OSPF配置是否正确,结果如下:[AR27]dis ospf brief //查看AR27 OSPF协议简要信息 OSPF Process 1 with Router ID 10.5.1.27 OSPF Protocol Information RouterID: 10.5.1.27 Border Router: ......(此处省略部分内容) Area: 0.0.0.0 (MPLS TE not enabled) Authtype: MD5 Area flag: Normal SPF scheduled Count: 15 ExChange/Loading Neighbors: 0 Router ID conflict state: Normal Area interface up count: 3.......
ping, tracert和traceroute命令详解
ping命令详解使用 ping可以测试计算机名和计算机的
ip
地址,验证与远程计算机的连接,通过将 icmp 回显数据
包
发送到计算机并侦听回显回复数据
包
来验证与一台或多台远程计算机的连接,该命令只有在安装了 tcp/
ip
协议后才可以使用。 现在打开你的ms-dos(开始→程序→ms-dos),用win2000的朋友打开cmd.exe(这是win2000下的ms-dos,开...
计算机网络基础实践
1.TCP/
IP
是一个协议簇,里面有tcp udp
ip
协议等, 2.复用,所有应用层到
ip
网络层的数据都通过运输层 3.分用,
ip
层来的数据必须指明进程端口号,端口号是用来在互联网环境下标识一个进程的,端口号是2-16次方个,只具有本地意义,标识本地进程在运输层交互时的接口 3.计算机通信采用的是客户-服务器方式的 端口分服务端端口(熟知端口如http80和登记端口)和客户端端口(在客户端运行进...
TCP/
IP
协议
TCP/
IP
协议
求助
编辑百科名片 TCP/
IP
协议层级模型 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的
IP
协议和传输层的TCP协议组成。TCP/
IP
定义...
计算机网络关键知识点记录
概念术语 五层参考模型 传输单元 应用层 报文 传输层 报文段 网络层
IP
数据报,分组(
IP
数组报分片得到分组) 数据链路层 帧 物理层 比特流 MTU,即最大传输单元,数据(有效载荷)部分的最大长度。
IP
地址是逻辑地址,MAC地址是物理地址。 数据链路层 1. 以太网帧的格式 最常用的MAC帧就是以太网V2的格式,格式如下: 上图中每个字段的含义如下表所示: 字段 含义 前同步码 用来使
接收
端的适配器在
接收
MAC 帧时能够迅速调整时钟频率
Linux_Kernel
4,441
社区成员
17,460
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章