Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Szukam pomysłu na rozwiązanie problemu z generowanie MAC, Podaję pierwszy i ostatni MAC, a system generuje pośrednie.
HaPe
post
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 30.04.2013

Ostrzeżenie: (0%)
-----


Witam,

Sklejam sobie niewielki panel webowy, mający na celu ułatwienie mi zarządzanie niewielką siecią. Wiele urządzeń pewnej firmy, które stosuję ma na obudowie podany pierwszy i ostatni adres MAC.
Jednak nie wiem za bardzo jak zabrać się za funkcję, która po podaniu I ostatniego MAC z obudowy zwróci mi pierwszy, wszystkie pośrednie i ostatni.
Dla przykładu podam:
  1. 0F:69:6D:4F:B9:03
  2. 0F:69:6D:4F:B9:04
  3. 0F:69:6D:4F:B9:05
  4. 0F:69:6D:4F:B9:05
  5. 0F:69:6D:4F:B9:06
  6. 0F:69:6D:4F:B9:07
  7. 0F:69:6D:4F:B9:08
  8. 0F:69:6D:4F:B9:09
  9. 0F:69:6D:4F:B9:0A
  10. 0F:69:6D:4F:B9:0B
  11. 0F:69:6D:4F:B9:0C


Jednak na obudowie urządzenia jest podany tylko adres mac 0F:69:6D:4F:B9:03 oraz 0F:69:6D:4F:B9:0C.
Będę wdzięczny za poradę.
Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pmir13
post
Post #2





Grupa: Zarejestrowani
Postów: 282
Pomógł: 89
Dołączył: 12.04.2011

Ostrzeżenie: (0%)
-----


Jeśli zmienia się tylko ostatnia część to wystarczy:
  1. $mac1 = '0F:69:6D:4F:B9:03';
  2. $mac2 = '0F:69:6D:4F:B9:1C';
  3.  
  4. $base = substr( $mac1, 0, 15 );
  5. $offset1 = substr( $mac1, 15 );
  6. $offset2 = substr( $mac2, 15 );
  7.  
  8. for( $i = hexdec($offset1); $i<=hexdec($offset2); $i++ )
  9. echo $base.sprintf('%02X',$i).'<br />';


Jeśli zmienia się więcej to trzeba usunąć dwukropki z offsetów przy pomocy str_replace() przed zamianą na dec, a przy wyświetlaniu wstawić z powrotem przez wordwrap().
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 17:43