Come programmare un indirizzo di porta

February 21

Come programmare un indirizzo di porta


In reti di computer, protocolli di comunicazione descrivono le interazioni ammissibili tra computer comunicanti. Il Transmission Control Protocol (TCP), utilizzato su Internet, definisce un nome - che identifica in modo univoco un'applicazione qualsiasi punto della rete - come una combinazione di indirizzo di rete e un numero di porta a quell'indirizzo. È possibile programmare un'applicazione che attende per le connessioni TCP a un indirizzo e la porta dato numero.

istruzione

1 Includere le librerie di sistema necessarie nel codice. Il modo specifico di eseguire questa operazione dipende dal linguaggio di programmazione. Ad esempio, in C, questo codice di esempio esegue questo compito:

includere <sys / socket.h> includere <arpa / inet.h> includere <string.h>

2 Dichiarare strutture di dati per un socket TCP e il suo indirizzo di rete. Ad esempio, in C, questo codice di esempio esegue questo compito:

int mysocket;

struct sockaddr_in myServerAddress;

3 Inizializzare il socket TCP per gestire le connessioni in entrata. Ad esempio, in C, questo codice di esempio esegue questo compito:

mysocket = socket (PF_INET, SOCK_STREAM, IPPROTO_TCP);

4 Inizializzare la struttura di indirizzo di rete con i valori per il vostro indirizzo locale. Ad esempio, in C, questo codice di esempio esegue questo compito:

memset (& myServerAddress, 0, sizeof (myServerAddress));

myServerAddress.sin_family = AF_INET;

myServerAddress.sin_addr.s_addr = htonl (INADDR_ANY);

myServerAddress.sin_port = htons (myport);

Sostituire "myport" con il numero di porta - tra 1024 e 65535 - in cui l'applicazione deve ascoltare per le connessioni in entrata.

5 Associare il socket per l'indirizzo locale. Ad esempio, in C, questo codice di esempio esegue questo compito:

bind (mysocket, (struct sockaddr *) e myServerAddress, sizeof (myServerAddress);

Dopo l'esecuzione di questa linea, il programma è pronto a ricevere le connessioni in entrata all'indirizzo di rete locale e alla porta specificata.