Android-VPN naar Cisco IOS: het contract dat u eerst moet regelen
Voordat u een Android-client voor een Cisco IOS-gateway installeert, verzamelt u protocol, authenticatie, identiteit en routing. Een draaiboek voor die fase.
De telefoon moet een Cisco-gateway bereiken. Iemand heeft al de client genoemd die geïnstalleerd moet worden. Dat is het verkeerde eind van het proces, en daarom faalt de tunnel na een uur opnieuw intypen van inloggegevens.
Wat u eerst nodig hebt, is een verbindingscontract: protocol, authenticatie, identiteit, vertrouwensmateriaal, adresuitgifte en routing, opgeschreven door wie de gateway beheert.
Krijg dat op papier en de clientkeuze wordt een opzoeking. Sla het over en elke storing lijkt op een verkeerd wachtwoord.
Doe de inventarisatie voordat u iets installeert
Stuur de eigenaar van de gateway een lijst en vraag om antwoorden, niet om een productnaam. Negen punten dekken een remote-accessprofiel volledig:
- De hostnaam of het adres van de gateway die de client moet bellen, en of die van buitenaf bereikbaar is.
- Het protocol en de versie: IKEv2, een andere IPsec-generatie of een TLS-gebaseerde dienst.
- De peer-identiteit die de gateway verwacht, en wat die zelf terug presenteert.
- Vertrouwensmateriaal: welke CA het gateway-certificaat ondertekent, of er een vooraf gedeelde sleutel wordt gebruikt.
- Gebruikersauthenticatie: certificaat, EAP-gebruikersnaam en wachtwoord, of een vooraf gedeelde sleutel.
- De adrespool waarin de client landt, met masker en gateway.
- DNS-servers voor gebruik in de tunnel, en of de client ze moet accepteren.
- Toegestane bestemmingsprefixen, en of verkeer daarbuiten geblokkeerd moet worden.
- De ondersteunde clientversies en besturingssysteemversies van de telefoon, plus eventuele registratievereisten.
Twee van die punten veroorzaken de meeste vermijdbare storingen. Zonder het vertrouwensmateriaal kunt u de gateway niet valideren, dus een correcte client lijkt defect. Zonder de toegestane prefixen kunt u een routingbeperking niet van een dienstprobleem onderscheiden.
De leveranciersnaam is geen protocol
Cisco IOS en IOS XE bieden meerdere remote-accessopstellingen, en ze delen geen gemeenschappelijk transportformaat. IKEv2 met een FlexVPN-achtig profiel is niet dezelfde dienst als een oudere IKEv1-configuratie, en een TLS-gebaseerde clientdienst is weer een ander product, vaak op een ander platform in dezelfde omgeving.
Een client waarvan de naam de routerleverancier noemt, bewijst dus niets. Hij kan een van die diensten goed implementeren en geen van de andere. Vraag welke dienst is geconfigureerd en controleer daarna of de documentatie van de client die dienst als ondersteund vermeldt.
Cisco's eigen IKEv2-documentatie scheidt het voorstel, het beleid, het profiel en de sleutelring als afzonderlijke objecten. Die structuur is nuttig wanneer u een configuratie leest die iemand u toestuurt: ze vertelt welk object de instellingen bevat die voor een externe telefoon belangrijk zijn, in plaats van het hele bestand als één blok te behandelen.
Wat de ingebouwde stack van Android dekt
Android biedt een platform-IKEv2/IPsec-profiel via Ikev2VpnProfile, met aparte authenticatietypen voor een vooraf gedeelde sleutel, een RSA-certificaat en EAP-gebruikersnaam en wachtwoord. De Ikev2VpnProfile-referentie is de autoriteit voor wat de builder accepteert, inclusief de hostnaam van de gateway en de server-root-CA die wordt gebruikt om die te valideren.
Die API is een capaciteitsverklaring, geen compatibiliteitsbelofte. Hij zegt dat het platform IKEv2 kan met die authenticatietypen. Hij zegt niet dat een bepaald OEM-instellingenscherm elk veld toont, en ook niet dat een profielbestand dat uit een ander product is geëxporteerd, wordt geïmporteerd.
Het betekent ook dat de ingebouwde stack u niet redt als de gateway een dienst draait die het platform niet implementeert. In dat geval hebt u de leveranciersclient nodig die de operator ondersteunt, geïnstalleerd en geconfigureerd zoals de operator documenteert, in plaats van een omweg op een protocol dat de telefoon niet spreekt.
Test in de volgorde waarin het contract is geschreven
Valideer één laag tegelijk en stop bij de eerste fout, want latere tests zijn zinloos tot de eerdere slagen.
Vertrouwen. Als de client het gateway-certificaat weigert, doet niets anders ertoe. Bevestig dat de CA die u kreeg het certificaat ondertekent dat de gateway presenteert, en dat de hostnaam die u belde erin staat. Laat de validatie aan; uitzetten maakt van een identiteitsprobleem een risico op onderschepping.
Authenticatie. Geweigerde inloggegevens en een niet-passend voorstel geven verschillende fouten maar vergelijkbaar lijkende storingen. Het gateway-log is beslissend: het zegt of het voorstel aanvaardbaar was voordat het iets over de gebruiker zegt.
Adres en DNS. Bevestig dat de telefoon een adres uit de gedocumenteerde pool kreeg, en los dan één interne naam op. Een tunnel die opkomt met een adres en zonder resolver lijkt verbonden en gedraagt zich alsof niets werkt.
Bereikbaarheid. Test één toegestane bestemming op adres en daarna op naam. Werkt het adres en de naam niet, dan bent u terug bij DNS. Werkt geen van beide, vergelijk dan het prefix dat u test met de toegestane lijst voordat u de client aanraakt.
Storingsmodi en de terugdraaiing
| Symptom | Contract item to re-check |
|---|---|
| Profile rejected at import | Protocol or client release unsupported for that service |
| No proposal chosen | IKE version or encryption proposal mismatch |
| Certificate error, correct credentials | Trust material or peer identity |
| Tunnel up, no address | Address pool or authorization on the gateway |
| Tunnel up, names fail | DNS servers or split-tunnel DNS behaviour |
Houd het vorige werkende profiel geëxporteerd en gedocumenteerd voordat u iets wijzigt, inclusief het CA-alias en de adrespool. Terugdraaien betekent dan een bekend profiel herstellen, niet het tijdens een storing uit het hoofd reconstrueren.
Als het werkt, noteer dan de negen inventarisatieantwoorden naast het profiel. De volgende telefoon, de volgende OS-update en de volgende gatewaywijziging worden allemaal een vergelijking met een document in plaats van weer een middag gissen.