Uvod u IP adresu

Da bismo naučili "Dohvati IP adresu u PHP-u", prvo ćemo proučiti IP adresu. IP adresa ili adresa internetskog protokola je adresa koja je brojčana adresa ili oznaka koju imaju svaki sustav ili uređaj spojen na mrežu. IP adresa je dodijeljena svakom takvom uređaju. Ovi uređaji koriste internetski protokol za bilo koju vrstu komunikacije.

Verzija IP-a

Ispod točke Objasnite IP verziju:

  • Verzija IP-a definirana je prema nalogu naljepnice internetskog protokola. Na primjer, IPv4, što je starija inačica, definira adresu internetskog protokola sa 32-bitnim brojem. Rastom interneta nastao je IPv6 koji definira 128-bitnu IP oznaku. IPv6 se koristi od 1995. do danas. Adresa internetskog protokola napisana je na razumljivom jeziku. Primjer IPv4 je sljedeći, 170.17.260.2, a primjer za IPv6 je 2001: db8: 2: 1434: 1: 587: 5: 2.
  • Prostori stečenim adresama internetskih protokola upravljaju globalno. Registar pod nazivom Internet Assigned Numbers Authority zajedno s ostalih pet regionalnih registra omogućuje upravljanje prostorom za adrese internetskih protokola. IANA je odgovorna za dodjelu prostora i upravljanje adresama internetskih protokola svim krajnjim korisnicima i ostalim pružateljima internetskih usluga na njihovim određenim područjima ili teritorijima. Slično tome, svim uređajima povezanim na mrežu davatelja internetskih usluga dodjeljuje se jedinstvena adresa internetskog protokola.
  • Postoje statične adrese internetskog protokola koje se ne mijenjaju često, nude se poslužiteljima. Davatelji internetskih usluga pružaju specifičnu i jedinstvenu adresu internetskog protokola za uređaj koji koristi modem. Ta je IP adresa jedinstvena za sesiju i može se promijeniti za sljedeću sesiju.

Prepoznavanje i vraćanje IP adrese u PHP-u

Iz sigurnosnih razloga web mjesta prikupljaju IP adrese posjetitelja njihovih web lokacija. Postoji jednostavan način da se ta adresa dobije u PHP-u. U PHP-u se nalazi određeni niz koji pomaže i vraća IP adresu vašeg računala. Niz je poznat kao "$ _SERVER". Sadrži informacije o putovima, zaglavima i lokacijama skripte. Web poslužitelj stvara informacije potrebne za $ _SERVER niz. Ponekad ovaj poslužitelj ne stvori ili ne pruži sve informacije potrebne u nizu, neke od njih mogu izostaviti. Stoga postoji još jedan niz koji se može koristiti u takvim slučajevima. Napisano je kao "SERVER_ADDR". Ovaj niz vraća IP adresu poslužitelja pod kojim se izvodi skripta.

Metode koriste za dobivanje IP adrese u PHP-u

Ispod je primjer koji se koristi za dobivanje IP adrese u php-u:

Primjeri br. 1

Najjednostavniji način je upotreba $ _SERVER s 'REMOTE_ADDR', ona će vratiti IP adresu korisnika koji trenutno pregleda stranicu.

  • Primjer pomoću ('REMOTE_ADDR') za prepoznavanje IP adrese poslužitelja u PHP-u.

Kodirati:

<_?php
echo 'User IP - '.$_SERVER('REMOTE_ADDR');
?>

Izlaz:

Primjer 2

Druga metoda, nazvana "SERVER_ADDR", koja se također koristi za dohvaćanje IP adrese poslužitelja.

  • Primjer pomoću ('SERVER_ADDR') za prepoznavanje IP adrese poslužitelja u PHP-u.

Kodirati:

<_?php
// PHP program to retrieve server's Internet Protocol address
// Creating a variable to store the server address
$ip_server = $_SERVER('SERVER_ADDR');
// Displaying the retrieved address
echo "Server IP Address is: $ip_server";
?>

Izlaz:

Objašnjenje gornjem programu: Gornji primjer matrice ($ _SERVER) je koristan ako stroj nije priključen putem proxyja. Ako je uređaj spojen na Internet putem ili putem proxy poslužitelja, $ _SERVER ('REMOTE_ADDR') u PHP-u ne vraća ispravnu IP adresu. Samo vraća IP adresu proxy poslužitelja i računala korisnika ili klijenta. U ovoj se situaciji za pronalaženje ispravne adrese koristi druga metoda.

Primjer 3

Sljedeći primjer koristi se za vraćanje ispravne i stvarne IP adrese čak i ako se stroj krije iza proxy poslužitelja. Koristi dodatni par SERVER varijabli koje su dostupne za dobivanje točne IP adrese klijentovog sustava ili stroja. Poznati su kao HTTP_CLIENT_IP i HTTP_X_FORWARDED_FOR.

  • Primjeri pomoću ('HTTP_CLIENT_IP') i ('HTTP_X_FORWARDED_FOR') za identificiranje IP adrese poslužitelja u PHP-u.

Kodirati:

<_?php
function RetrieveUserIP()
(
if(!empty($_SERVER('HTTP_CLIENT_IP')))
(
$address=$_SERVER('HTTP_CLIENT_IP');
)
elseif(!empty($_SERVER('HTTP_X_FORWARDED_FOR')))
(
$address=$_SERVER('HTTP_X_FORWARDED_FOR');
)
else
(
$address=$_SERVER('REMOTE_ADDR');
)
return $address;
)
echo 'User IP Address is'.RetrieveUserIP();
?>

Izlaz:

Ako je potrebno razumjeti tijek radnji gornjeg koda, za isti se može obratiti slijedeća shema tijeka.

Objašnjenje gornjem programu: Gornji primjer za dohvaćanje IP adrese koristi dvije varijable, ('HTTP_CLIENT_IP') i ('HTTP_X_FORWARDED_FOR'). U programu radimo svoj prvi pokušaj da ga izravno skinemo s računala pomoću HTTP_CLIENT_IP. Ako to nije dostupno, pokušavamo IP proslijediti putem HTTP_X_FORWARDD_FOR. Kad oba uvjeta postanu ništavna, pokušajmo dobiti IP adresu pomoću REMOTE_ADDR varijable.

Bodovi za pamćenje

Ispod bodova treba imati na umu: Dobivanje IP adrese u php-u:

1. Kad se pokrenemo gornji kod, vraćena IP adresa prikazuje se kao: 1. To je poznato kao povratna adresa koja je zapravo predstavljena kao 127 puta nula, a slijedi je 1 koja je (0000…. 127 puta… .1). Ako to želimo napisati, pisat će se kao:

2. Ali u IPv6, ovu veliku oznaku možemo predstaviti u kratkom obliku. Dakle, ako u jednom bloku postoje sve nule, ona se može zamijeniti s jednom nulom. Kada se slijedi gore navedeno pravilo, ono postaje: 0: 0: 0: 0: 0: 0: 0: 0001;

3. Opet, nule se mogu eliminirati i ostaje nam :: 0001

4. Što se opet smanjuje na ' :: 1 ', dakle izlaz.

Objašnjenje gornjeg koda: Ako su napravljeni da se pokreću, oni možda neće dati izlaz ili mogu vratiti grešku u vremenu pokretanja jer privatne domene ne nude adrese internetskog protokola. Iako se gornji kodovi izvršavaju na lokalnom poslužitelju ili lokalnom hostu, kao što smo koristili WAMP poslužitelj, pružit će izlaz prema IP verziji, tj. Ako je IPv4, adresa internetskog protokola bit će prikazano kao '127: 0: 0: 1', a ako je IPv6, adresa internetskog protokola bit će prikazana kao gore, da je ': 1'

Preporučeni članci

Ovo je vodič za dobivanje IP adrese u PHP-u. Ovdje smo raspravljali o prepoznavanju IP adrese, metodama u IP adresi i točkama koje se trebaju zapamtiti u IP adresi. Možete i pregledati naše druge povezane članke da biste saznali više -

  1. PHP baza podataka
  2. Što je TCP / IP?
  3. Programiranje utičnica u PHP-u
  4. Palindrome u PHP-u
  5. Palindrome u C ++
  6. Palindrome u JavaScriptu
  7. 12 najboljih usporedbi Maca i IP adresa
  8. Programiranje utičnica u Pythonu
  9. Što je IPv4?

Kategorija: