注册 登录
编程论坛 Linux教室

linux网络编程问题

llemmx 发布于 2008-09-26 13:12, 1469 次点击
请教大家一个问题,不知道是否有人遇到过,假设有一台机器的IP地址是192.168.1.100的设备,另一台设备IP是10.10.10.1。
这个时候我在192.168.1.100设备上写一个UDP服务程序向10.10.10.1设备发送数据包,但是一直不成功,调试的时候发现在调用sendto命令向10.10.10.1设备发送数据显示是成功的,但是网卡实际上没有发送任何数据。再用sendto命令向一台不存在的192.168.1.101设备发送数据反而网卡上有数据发出。
试了很多方法都是这样,不知道这是不是linux的系统特性啊。不知道大家是否有遇到过
3 回复
#2
zttyler2008-10-01 01:13
能ping通吗?如果能通,应该没有问题的
#3
cuixingasd2009-09-23 09:57
你如果没有用路由的话,数据是无法传送的。由于UDP属于运输层,它只管接收数据在把这个数据打包传给IP层,但是IP层的IP协议规定只能在同网段才能把数据发送出去。所以就造成数据的丢失。
#4
faminxmu2010-04-21 20:16
一般来说可能你没有考虑处理器是大端或者小端问题,这个问题会导致你的端口号错误.
1