Как проверить данные, отправленные на IP-адрес определенного порта? - PullRequest
0 голосов
/ 11 мая 2011

Я отправляю данные на IP-адрес 127.0.0.1 по номеру порта 5152. Посредством программирования сокетов я отправляю данные («Hello world»). Я получаю подтверждение как отправлено 51 байт. Но как я узнаю, что полученные данные верны или нет по указанному IP-адресу.

Я создал серверное приложение, и здесь я использую тот же IP-адрес и номер порта.

// Create our listening socket
//
sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
if (sListen == SOCKET_ERROR)
{
    printf("socket() failed: %d\n", WSAGetLastError());
    return 1;
}
// Select the local interface and bind to it
//
if (bInterface)
{
    local.sin_addr.s_addr = inet_addr(szAddress);
    if (local.sin_addr.s_addr == INADDR_NONE)
        usage();
}
else
    local.sin_addr.s_addr = htonl(INADDR_ANY);
local.sin_family = AF_INET;
local.sin_port = htons(iPort);

if (bind(sListen, (struct sockaddr *)&local,
        sizeof(local)) == SOCKET_ERROR)
{
    printf("bind() failed: %d\n", WSAGetLastError());
    return 1;
}

Привязка завершается ошибкой 10048.

Ответы [ 3 ]

1 голос
/ 11 мая 2011

Зависит от того, к чему вы подключаетесь.Если это ваше приложение, тот факт, что открываемый сокет доказывает, что у вас уже есть прослушивающий сокет: просто отобразите то, что оно получает (или настройте трассировки на сервере для его отображения).

Другая идея при работе с сетьюразработка заключается в мониторинге реального сетевого трафика с помощью wireshark.

0 голосов
/ 11 мая 2011

Ваша ошибка "адрес уже используется".Это означает, что какая-то другая программа имеет открытый порт.Вы можете увидеть список программ прослушивания с помощью «netstat» в командной строке.Возможно, это поможет вам разобраться.

Wireshark - это удобное приложение для просмотра того, что отправляется по сети.Очень удобно для отладки подобных программ.

0 голосов
/ 11 мая 2011

Вы отправили свои данные - теперь вам нужно их получить!

Вам нужно будет создать сервер, который прослушивает порт 5152 в том же ящике, и отобразить то, что он получает от вашего клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...