Re: How to listen to more a specific IP and specific ports
- From: "Arkady Frenkel" <arkadyf@xxxxxxxxxxxxxxxx>
- Date: Wed, 28 Jun 2006 10:56:58 +0200
Those two options ( IP/port or any IP/port ) and additionally ( IP or any
IP/any port (0) ) are the only options of sockets ( that come from BSD (
Unix ) sockets ) you can use ,so you need 2 sockets to listen for two
different IP/ports
Arkady
"Bassam" <Bassam@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:77BD5E60-9D57-484E-830E-E5456812B472@xxxxxxxxxxxxxxxx
Dear all,
I am writing a network application that requires me to bind it to
specific network IP addresses and specific ports.
The normal binding resides in filling up the SOCKADDR_IN structure with
any
IP "INADDR_ANY" or a particular IP "192.168.1.148" and a single port as
follows:
SOCKADDR_IN tcpaddr;
int port = 1812;
tcpaddr.sin_family = AF_INET;
tcpaddr.sin_port = htons(port); //Single port
tcpaddr.sin_addr.s_addr = htonl(INADDR_ANY); //Any IP
or
tcpaddr.sin_addr.s_addr = htonl("192.168.1.148"); //A particular IP
Also this can be achieved by filling up the ADDRINFO structure of the
hints
parameter of the address resolution function "getaddrinfo()" as follows:
ADDRINFO hints;
LPADDRINFO resultPtr = NULL;
memset(&hints, 0, sizeof(hints));
hints.ai_flags = AI_PASSIVE; //to determin any IP
hints.ai_family = AF_INET;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = IPPROTO_TCP;
getaddrinfo(NULL, "1812", &hints, &resultPtr);
The first argument of "getaddrinfo()" is NULL to determin that we are
willing to bind to any IP, and the second argument is a single port.
NOW: my question is how to listen to traffic coming through particular IPs
(i.e., "192.168.1.148" and "192.168.10.30") on the server machin and
particular ports 1812 and 1813 at the same time?
Do I need to bind my single socket handler to different SOCKADDR_IN
structures each has its own IP address and port no.. However, I find this
way
is not feasible because the particular IPs are not fixed. I mean sometime
I
need to listen to one or two or more particular IPs.
I would appreciate if you shed light on this matter.
Regards
Bassam
.
- Prev by Date: Re: Win 2000 service needs to access Win 2003 Web Server data
- Next by Date: RE: Win 2000 service needs to access Win 2003 Web Server data
- Previous by thread: Re: Win 2000 service needs to access Win 2003 Web Server data
- Next by thread: Re: How to listen to more a specific IP and specific ports
- Index(es):
Relevant Pages
|
Loading