Cisco IOS implementează o logică internă la ACL-urile standard. Așa cum s-a discutat anterior , o partea din această logică previne declarațiile host din a fi configurate după o declarație de interval , dacă host-ul este membru al acelui interval , așa cum se arată în Figura 1.

O altă parte a logicii interne IOS include secvența internă a ACE-urilor standard. Figura 2 arată configurația unei liste de acces standard. Declarațiile de interval care blochează trei rețele sunt configurate mai întâi urmate de cinci declarații de host. Declarațiile host sunt declarații valide pentru că adresele IP host nu sunt parte a declarațiilor de interval anterioare.

Comanda show running-config este folosită pentru a verifica configuraţia ACL. Observați că declarațiile sunt listate într-o ordine diferită decât în cea în care au fost introduse. Vom folosi comanda show access-lists pentru a înțelege logica din spatele acesteia.

După cum se arată in Figura 3, comanda show access-lists afișează ACE-urile împreună cu numerele lor de secvență. Ne putem aștepta ca ordinea declarațiilor din rezultat să reflecte ordinea în care au fost introduse. Cu toate acestea , rezultatul comenzii show access-lists arată că acesta nu este cazul.

Ordinea În care ACE-urile standard sunt listate este secvența utilizată de către IOS pentru a procesa lista. Observați că declarațiile sunt grupate în două secțiuni , declarațiile host urmate de declarații de interval. Numărul de secvență indică ordinea în care a fost introdusă declarația , nu ordinea de procesare a declarației.

Declarațiile host sunt listate primele dar nu este neapărat ordinea în care ele au fost introduse. IOS pune declarațiile host într-o ordine utilizând o funcție de hash specială. Ordinea rezultată optimizează căutare de intrare ACL host.

Declarațiile interval sunt afișate după declarațiile host. Aceste declarații sunt listate în ordinea în care au fost introduse.

Amintiți-vă că ACL-urile standard și numerotate pot fi editate utilizând numere de secvență. Numărul de secvență prezentat în rezultatul comenzii show access-lists este numărul utilizat atunci când ștergeți declarații individuale din listă. Când introduceți o nouă declarație ACL , numărul de secvență va afecta doar locația declarației interval din listă. Declarațiile host vor fi puse în ordine utilizând funcția de hashing.

Continuând cu acest exemplu , după ce salvați running-configuration , router-ul este reîncarcat (repornit). După cum se arată in Figura 3, comanda show access-lists afișează ACL-ul în aceeași ordine , cu toate acestea , declarații au fost renumerotate. Numerele de secvență sunt acum în ordine numerică.

Notă:Funcția de hash este aplicată doar pentru declarațiile host într-o listă de acces IPv4 standard. Algoritmul nu este utilizat pentru ACL-uri IPv4 extinse sau ACL-uri IPv6. Acest lucru se datorează faptului că ACL-urile IPv6 și extinse filtrează mai mult de o singură adresa sursă. Detaliile funcției de hashing sunt în afara scopului acestui curs.