Узнать IP моего компа в инете???

Тема в разделе "WASM.NETWORKS", создана пользователем ganes, 10 янв 2005.

  1. ganes

    ganes New Member

    Публикаций:
    0
    Регистрация:
    7 дек 2004
    Сообщения:
    62
    Адрес:
    Ukraine
    Как программно мне узнать IP адресс моего компа в инете???
     
  2. kyprizel

    kyprizel New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    232
    Адрес:
    TSK
    на C:

    static char IP[16];



    struct sockaddr_in *sa;

    int sas = sizeof(sa);

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

    getsockname(sock, &sa, &sas);



    sprintf(IP,"%d.%d.%d.%d",(BYTE)sa.sa_data[2], (BYTE)sa.sa_data[3], (BYTE)sa.sa_data[4], (BYTE)sa.sa_data[5]);



    кормить сокеты
     
  3. Vovane

    Vovane New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2004
    Сообщения:
    58
    Адрес:
    Afghanistan
    CchkConect proc uses edi esi ebx pOutIPaddr:dword





    LOCAL sin : sockaddr_in

    LOCAL binz : sockaddr_in

    LOCAL sizbin : dword

    LOCAL hSocket : dword

    LOCAL pDats[200]:byte



    jmp @F

    dddd db 'www.microsoft.com',0

    @@:

    mov ebx, -1

    invoke socket, AF_INET, SOCK_STREAM, 0

    .if eax != -1

    mov hSocket, eax

    mov sin.sin_family, AF_INET

    invoke htons, 80

    mov sin.sin_port,ax

    invoke gethostbyname, addr dddd

    .if eax != 0

    mov eax, [eax+0Ch]

    mov eax, [eax]

    mov eax, [eax]

    mov sin.sin_addr, eax

    invoke connect, hSocket, addr sin, sizeof sin

    .if eax == 0

    mov sizbin, sizeof binz

    invoke getsockname, hSocket, addr binz, addr sizbin

    mov eax, binz.sin_addr

    invoke inet_ntoa, eax

    invoke lstrcpy, pOutIPaddr, eax

    mov ebx, 1

    .endif

    .endif

    invoke closesocket, hSocket

    .endif

    mov eax, ebx

    ret



    CchkConect endp
     
  4. ganes

    ganes New Member

    Публикаций:
    0
    Регистрация:
    7 дек 2004
    Сообщения:
    62
    Адрес:
    Ukraine
    Хелп, чото всеравно не выходит, вот подключился к инету

    сейчас и все равно выводит IP: 255.255.255.255
    Код (Text):
    1.  
    2. .data
    3.  
    4. ...
    5.  
    6. SOCKADDR STRUCT
    7.       sa_family  dw 0
    8.       sa_data    db 14 dup (0)
    9. SOCKADDR ENDS
    10.  
    11. sa              SOCKADDR    <>
    12. wsaData         WSADATA     <>
    13. szsa dw sizeof sa
    14. sock           dd 0            ;сакет
    15.  
    16. ...
    17.  
    18. .code
    19.  
    20. ...
    21.  
    22.         invoke   WSAStartup,202h,addr wsaData
    23.         invoke   socket,AF_INET,SOCK_STREAM,0
    24.         mov       sock,eax
    25.  
    26.         invoke   getsockname,s,addr sa,szsa
    27.         invoke   inet_ntoa,eax
    28.         invoke   lstrcat,addr mIP,eax
    29.        
    30.         invoke   MessageBox,0,addr mIP,addr mIP,MB_OK
    31.  
    32.         invoke   WSACleanup
    33. ...
    34.  
    35.  


    В чем моя ошипка? И почему непоказует правильный IP адресс

    моего компа в сети???
     
  5. Vovane

    Vovane New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2004
    Сообщения:
    58
    Адрес:
    Afghanistan
    getsockname - работает только с активным сокетом (подключись к чему-нибудь)
     
  6. ganes

    ganes New Member

    Публикаций:
    0
    Регистрация:
    7 дек 2004
    Сообщения:
    62
    Адрес:
    Ukraine
    А если я буду в локальной сети то эта функция прокатит?

    Или есть что-нибудь еще?

    (localhost вроде все время указывает)на 127.0.0.1)
     
  7. Vovane

    Vovane New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2004
    Сообщения:
    58
    Адрес:
    Afghanistan
    SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{xxxxxxx xxxxxxx}
     
  8. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
  9. Vovane

    Vovane New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2004
    Сообщения:
    58
    Адрес:
    Afghanistan
    Нет не мое, просто я от туда выдрал проверку связи с инетом.
     
  10. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    Vovane

    A FillMemory из Ethiptcp.rar из той же ветки.