getting the IP address sent
- From: mohun106@xxxxxxxxx
- Date: 26 Apr 2006 02:04:59 -0700
Hi,
I have a server running on one linux system. The client sends UDP
packets. It has two options---one is send broadcast address and other
is send the address of the server system if known.
How to detect at the server side that what address is sent by the
client?
My server program is below:
if((sfd=socket(AF_INET,SOCK_DGRAM,0))<0)
errexit("cant open stream\n");
memset(&srvadr,0,sizeof(srvadr));
srvadr.sin_family =AF_INET;
//srvadr.sin_addr.s_addr =inet_addr(srvipadrs);
srvadr.sin_addr.s_addr =inet_addr(255.255.255.255);
srvadr.sin_port =htons(srvtcpport);
if(bind(sfd,(struct sockaddr*)&srvadr , sizeof(srvadr)) < 0)
errexit("Can't bind local address\n");
printf("Socket is Opened Waiting for reply\n");
memset(&rxmesg,0,sizeof(rxmesg));
fromlen=sizeof(from);
if(recvfrom(sfd,rxmesg,7,0,(struct sockaddr*)&from,&fromlen)<0)
errexit("recv error \n");
//printf("Received Message is %s\n",rxmesg);
printf(" Received Message from %s:%d\n",
inet_ntoa(from.sin_addr),ntohs(from.sin_port));
if (setsockopt(sfd,SOL_SOCKET,SO_BROADCAST,&one,sizeof(one))==-1)
{
//perror("bootpc: setsockopt failed");
//FatalError();
}
from.sin_addr.s_addr =inet_addr(255.255.255.255);
.
- Prev by Date: Re: networking problem
- Next by Date: CAT-5 cable stuck in ethernet port - can't remove
- Previous by thread: Re: networking problem
- Next by thread: CAT-5 cable stuck in ethernet port - can't remove
- Index(es):
Relevant Pages
|