Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > получаю 127.0.0.1 из recvfrom(...,&sockaddr,..)


Автор: MoZy 29.4.2008, 22:56
Может дурацкий вопрос. Давно в сокетах не лазил.
Короче шлю броадкаст, попадает мне:
Код

case WM_NETEVENT:
{
    SOCKET tmp_socket = wParam;
    SOCKADDR_IN tmp_addr;

   WSAAsyncSelect (tmp_socket, hwndMain, WM_NETEVENT, 0);//Отключаем события
    
    switch(LOWORD(lParam))
    {
        case FD_READ:
        {
            int len = sizeof (sockaddr);
            char Message[504];
            UINT res;
            DWORD param;
            res=recvfrom(tmp_socket,Message, 504, 0, (sockaddr *)&tmp_addr,&len);
           ...


И вот когда мне приходит, понять не могу: в tmp_addr - IPшник 127.0.0.1
Это вообще нормально, если у меня IP на данный момент: xxx.xxx.xxx.xxx? 

ЗЫ От других машин не проверял... И самое страшное когда-то работало, я вид чет изменил и не знаю че.
SOS!

Автор: Fazil6 30.4.2008, 09:17
Цитата(MoZy @  29.4.2008,  22:56 Найти цитируемый пост)
И вот когда мне приходит, понять не могу: в tmp_addr - IPшник 127.0.0.1
Это вообще нормально, если у меня IP на данный момент: xxx.xxx.xxx.xxx? 

нормально. 127.0.0.1 - это ты и есть

Автор: EnergoHokum 5.5.2008, 07:48
Адрес 127.0.0.1  -- это стандартный адрес loopback (как корректно переводится -- не знаю, что-то вроде "обратная петля", "закольцовка"). То есть, твой компьютер может даже не иметь сетевой карты, но если двум приложениям нужно "пообщаться" по сетевому протоколу, то через этот адрес они могут устанавливать соединение друг с другом.

Автор: MAKCim 5.5.2008, 09:50
Цитата(MoZy @  29.4.2008,  22:56 Найти цитируемый пост)
Это вообще нормально, если у меня IP на данный момент: xxx.xxx.xxx.xxx? 

BROADCAST пакеты идут ко всем хостам подсети
твой хост не исключение
другой вопрос, почему адрес закольцовки...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)