ASA VPN-klienter får adresser fra den forkerte DHCP-pulje
Læs ASA'ens dhcp-server og dhcp-network-scope som to forskellige felter, sæt scope til en rutbar adresse uden for puljen, og verificér derefter ruten.
AnyConnect-klienter dukker op på det forkerte undernet, eller DHCP-serveren nægter at udlevere noget som helst, mens gruppepolitikken ser rigtig ud ved første øjekast. På en ASA er der to felter på to steder, som begge lyder som »hvor kommer adresserne fra«, og sætter man det forkerte, giver det præcis dette. Forbindelsesprofilen navngiver DHCP-serveren; gruppepolitikken navngiver et undernet, som serveren skal vælge fra. Ingen af dem opretter en pulje.
Tre objekter, tre spørgsmål
Adskil først tildelingsmodellen fra puljen, for de to modeller deler ikke konfiguration. Hvis ASA'en selv uddeler adresser, definerer du en lokal pulje og peger gruppepolitikken på den. Hvis en ekstern DHCP-server uddeler dem, navngiver forbindelsesprofilen den server, og gruppepolitikken giver et scope-hint. At blande de to er den sædvanlige grund til, at en adresse aldrig dukker op.
| Intent | Objects involved |
|---|---|
| ASA allocates from its own pool | ip local pool plus the group policy's address-pool |
| External DHCP allocates | dhcp-server on the tunnel group, dhcp-network-scope on the group policy |
Læs de gældende værdier, før du ændrer en
En udeladt linje er ikke det samme som et eksplicit none. Den kørende konfiguration viser, hvad du skrev; show run all group-policy viser, hvad politikken faktisk opløses til, inklusive nedarvede standardværdier. Kontrollér begge, før du beslutter, at scope er forkert, for en gruppepolitik, der arver fra en standardpolitik, kan levere en værdi, som aldrig optræder i den korte visning.
show running-config group-policy RemoteStaff
show run all group-policy RemoteStaff
show running-config tunnel-group RemoteStaff
group-policy RemoteStaff attributes
dhcp-network-scope ?
? output er værd at læse på din installerede version, da accepterede værdier og deres hjælpetekst varierer mellem versioner. Cisco ASA 9.24 gruppepolitik-reference dokumenterer attributten som en rutbar adresse på det ønskede undernet, uden for tildelingspuljen, med en interface-adresse foretrukket. Det er ikke puljens område, og det er ikke netværksnummeret.
Sæt scope til en adresse, ikke et område
Antag, at den pulje, du vil have serveren til at bruge, er 10.50.30.50 til 10.50.30.200 på et /24, og at ASA-interfacet på det segment er 10.50.30.1. Scope-værdien er 10.50.30.1. At skrive 10.50.30.0 fejler, fordi det er netværksnummeret, og at skrive området fejler, fordi attributten tager én adresse. Hvis den adresse, du vælger, ikke er en interface-adresse, kræver den en statisk rute, så DHCP-serverens svar kan nå den.
group-policy RemoteStaff attributes
dhcp-network-scope 10.50.30.1
Dette fragment gør kun én ting. Det konfigurerer ikke DHCP-serveren, opretter ikke en pulje der eller gør en delvis fjernadgangsprofil funktionsdygtig. Den dokumenterede adfærd her er kun IPv4; forvent ikke, at den styrer DHCPv6 eller præfiksdelegering.
Ændr det med et rollback-punkt
Tag først et snapshot, så rollback er en kommando og ikke en genopbygning. Gem den relevante konfiguration i en fil, før du redigerer, og vid, hvad no gendanner på din version: den returnerer attributten til dens standard- eller nedarvede værdi, som kan være none i stedet for politikken over den.
copy running-config flash:pre-dhcp-scope.cfg
conf t
group-policy RemoteStaff attributes
no dhcp-network-scope
dhcp-network-scope 10.50.30.1
end
write memory
At fjerne attributten er også et diagnostisk skridt. Uden et defineret scope søger DHCP-serveren i sine egne puljer efter en ikke-tildelt adresse, så klienten kan ende et uventet sted, men i det mindste forbinde. Det resultat fortæller, at anmodningsstien virker, og at det er puljevalget, der fejler.
Verificér adressen, ruten og tilladelserne
Læs tildelingen fra sessionstabellen i stedet for fra klientens dialog, og bekræft derefter, at adressen er rutbar tilbage til tunnelen, og at gruppepolitikkens filtre tillader den trafik, du forventer. En tildelingsbeslutning er ikke en routingbeslutning, og en klient, der får en adresse fra den rigtige pulje, kan stadig fejle på hver anmodning.
show vpn-sessiondb detail anyconnect filter name testuser
show ip local pool
show route | include 10.50.30
ping 10.50.30.61 source inside
Hvis sessionen viser den tilsigtede adresse, men trafikken dør, er scope færdig som mistænkt. Se på returruten, på split-tunnel- eller filterindstillinger i gruppepolitikken, og på om DHCP-scope ligger på et segment, som ASA'en faktisk ruter til.