Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Dodeljena IP adresa

[es] :: Pascal / Delphi / Kylix :: Dodeljena IP adresa

[ Pregleda: 2783 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

rambo
Dejan Petković
Beograd

Član broj: 6095
Poruke: 190
*.eunet.yu.



+6 Profil

icon Dodeljena IP adresa12.01.2008. u 00:54 - pre 198 meseci
Da li i kako može da se dobije dodeljena IP adresa računara (znači ona za default konekciju, tj. za default mrežni adapter) ali onda kada je mreža "unplugged" (kada je mrežni kabl otkačen)?

Ja sam probao na dva načina, i uvek sam adresu dobijao samo kada je kabl povezan.

Primer za prvi način je sledeći:

Code:

program IPHelper;

{$APPTYPE CONSOLE}

uses
  SysUtils, WinSock, JclSysInfo;

var
  sHost, sIP: String;
  nIP: Integer;

begin
  try
    sHost := GetLocalComputerName;
    sIP := GetIPAddress(sHost);
    nIP := inet_addr(PAnsiChar(sIP));
    Writeln('HostName: ', sHost);
    Writeln('IP address (string): ', sIP);
    Writeln('IP address (longint): ', nIP);
    Writeln('IP address components: ', (nIP and $000000FF), ', ', (nIP and $0000FF00) shr 8, ', ', (nIP and $00FF0000) shr 16, ', ', (nIP and $FF000000) shr 24);
    Readln;
  except
    on E:Exception do
      Writeln(E.Classname, ': ', E.Message);
  end;
end.


Drugi način je pomoću Indy komponente TIdIPWatch, ali i ona, u slučaju kada je kabl otkačen, vraća 127.0.0.1 (localhost).

Dakle, meni treba ona (fiksna) adresa koja je dodeljena na (default) LAN adapteru. Da li se to negde pamti u sistemu (i gde), i dali postoji neka API funkcija koja to može da mi vrati?

Unapred hvala.

"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Dodeljena IP adresa12.01.2008. u 15:59 - pre 198 meseci
> Da li i kako može da se dobije dodeljena IP adresa računara (znači ona za default konekciju, tj. za default mrežni adapter) ali onda kada je mreža
> "unplugged" (kada je mrežni kabl otkačen)?

Obično se adresa dobija od DHCP servera, ako nema mreže nema ni IP adrese. Ne verujem da je moguće ostvariti to (možda samo ako se ručno određuje IP adresa), pogledaj koje rezultate daje ipconfig.
 
Odgovor na temu

rambo
Dejan Petković
Beograd

Član broj: 6095
Poruke: 190
*.eunet.yu.



+6 Profil

icon Re: Dodeljena IP adresa12.01.2008. u 16:31 - pre 198 meseci
ipconfig daje iste rezultate, tj. ne vraća ništa kada je adapter unplugged. Inače, kao što rekoh ranije, radi se o fiksnoj IP adresi, tj. nije (i ne treba da bude) DHCP.

Jedino rešenje koje mi za sada pada na pamet jeste da nađem način da pročitam šta je upisano u podešavanjima samog adaptera. Negde sam pročitao da se to upisuje negde u registry, ali i da ti podaci mogu da se dobiju putem određenih WinAPI funkcija. Pogledaću malo MSDN, pa ću da javim ako nađem nešto.

"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Dodeljena IP adresa12.01.2008. u 19:10 - pre 198 meseci
Pogledaj GetAdaptersInfo ili neku drugu IP helper funkciju, ako ne onda verovatno se može naći u redžistriju.
 
Odgovor na temu

rambo
Dejan Petković
Beograd

Član broj: 6095
Poruke: 190
*.eunet.yu.



+6 Profil

icon Re: Dodeljena IP adresa14.01.2008. u 19:13 - pre 198 meseci
Ako ima još nekog koga interesuje odgovor na ovo pitanje, trenutno imam samo jedno jednostavno rešenje.

Dovoljno je da imate mali switch (5-portni) na koji su zakačeni svi računari, i sve će raditi kako treba
Naravno, switch treba uvek da bude uključen...

Ovo pišem samo zato što nisam imao vremena da tražim konkretno rešenje. Svakako, kada budem našao odgovor na svoje pitanje, postaviću ovde da pomognem i ostalima.

"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Dodeljena IP adresa

[ Pregleda: 2783 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.