void udp_task(void *p_arg)
{
int addr_length;
int data_lenght;
int ret;
struct sockaddr_in source_add;
struct sockaddr_in local_addr;
server_fd=socket(AF_INET,SOCK_DGRAM,0);
if(server_fd==-1)
printf("server_fd create failed\n");
bzero(&local_addr,sizeof(local_addr));
local_addr.sin_family=AF_INET;
local_addr.sin_port=htons(LOCAL_PORT);///3341
local_addr.sin_addr.s_addr=htonl(INADDR_ANY);
ret=bind(server_fd,(struct sockaddr*)&local_addr,sizeof(local_addr));
if(ret!=-1)
printf("bind 3341 sucess\n");
while(1)
{
memset(databuffer,0,BUFF_LEN);
data_lenght=recvfrom(server_fd,databuffer,sizeof(databuffer),0,\
(struct sockaddr *)&source_add,&addr_length);
if(data_lenght==-1)
{
printf("data recieved fail\n");
return;
}
printf("data recieved sucess\n");
}
}
uj5u.com熱心網友回復:
求個高手解決下,不知道是代碼問題還是其他原因,用電腦ping不通linux板子不知道什么原因,linux板子是自動分配的ipuj5u.com熱心網友回復:
可以肯定雙方是在一個局域網內uj5u.com熱心網友回復:
電腦防火墻已經全部關閉uj5u.com熱心網友回復:
首先udp協議 和 ping(ICMP協議) 沒有關聯性, 所以ping不通跟udp程式無關.pc ping不通 linux, 那么 linux 能ping通 pc嗎? linux的防火墻關掉了嗎(iptables -A INPUT -j ACCEPT 試試)?
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/129433.html
標籤:專題技術討論區
上一篇:vsftpd虛擬用戶配置
下一篇:Ubuntu18.04 安裝問題
