Konvertering av en 32-bitars IP-adress

Hämtar IP-adressen

Vi kommer att göra en ping ccm.net i syfte att hämta IP-adressen (med fetstil)

 $ Ping-c1 ccm.net PING ccm.net (194.169.240.130) 56 (84) databytor. 64 byte från www.kisokea.org (194.169.240.130): icmp_seq = 1 ttl = 53 tid = 53, 2 ms 

 --- ccm.net pingstatistik --- 1 paket överförd, 1 mottagen, 0% paketförlust, tid 0ms rtt min / avg / max / mdev = 53.230 / 53.230 / 53.230 / 0.000 ms 
  • Vi fortsätter nu med omvandlingen av IP med processorer bitar.
    • Numret är cirka 32 bitar. För att hämta det hela hoppar vi över varje byte. Operatören | tillåter lite.

Nedan visas den binära representationen

 11 000, 010 00, 000, 000 00, 000, 000 00, 000, 000 - 3, 254, 779, 904 (194 << 24) 00, 000, 000 10, 101, 001 00, 000, 000 00, 000, 000 - 11, 075, 584 (169 << 16) | 00, 000, 000 00, 000, 000 11, 110, 000 00, 000, 000 - 61, 440 (240 << 8) | 00, 000, 000 00, 000, 000 00, 000, 000 10, 000, 010 - 130 ----------------------------------- 11, 000, 010 10, 101, 001 11, 110, 000 10, 000, 010 - 3, 265, 917, 058 (3, 254, 779, 904 | 11075584 | 61440 | 130) 

Omvandling

Detta är kommandot för att konvertera hela IP på 32 bitar.

 $ 194, 169, 240, 130 echo | perl-ne s / (\ d +) \. (\ D +) \. (\ D +) \. (\ D +) / $ 1 << 24 | $ 2 << 16 | $ 3 << 8 | $ 4 / e; skriv ut '3265917058 
  • Nedan är resultatet av att använda pingnumret i stället för den klassiska IP

 $ Ping-c1 3265917058 PING 3265917058 (194.169.240.130) 56 (84) byte data. 64 byte från 194, 169, 240, 130: icmp_seq = 1 ttl = 53 tid = 53, 0 ms 

 --- 3265917058 pingstatistik --- 1 paket överförd, 1 mottagen, 0% paketförlust, tid 0ms rtt min / avg / max / mdev = 53.034 / 53.034 / 53.034 / 0.000 ms 
Tidigare Artikel Nästa Artikel

Bästa Tipsen