Konfigurera NAT64 på Sophos Firewall med Direct Web Proxy
En IPv6-only-klient kan via Sophos Firewalls Direct Web Proxy nå en webbplats som bara har en IPv4-adress. SFOS slår upp målnamnet i proxyn och etablerar den efterföljande anslutningen via IPv4. Det kräver två brandväggsregler: en IPv6-regel från klienten till proxyn och en IPv4-regel från proxyn till målet.
Det här är inte generell NAT64 på layer 3 för valfria protokoll. Det fungerar bara för HTTP- och HTTPS-anslutningar som webbläsare eller applikationer uttryckligen skickar till webproxyn. I det här flödet skapas ingen vanlig NAT64-regel under Rules and policies > NAT rules.
Den fullständiga klassificeringen finns i IPv6-stöd och begränsningar i Sophos Firewall med SFOS 22. SFOS stöder denna proxybaserade NAT64-sökväg men anger DNS64 som ej stött; detta skapar ingen allmän övergång för andra protokoll.
⚠️ De två reglerna har olika uppgifter. För IPv6-only-endpoints hör Web Policy och användarmatchning hemma i IPv6-regeln. Application Control, IPS och andra skyddsfunktioner för den utgående IPv4-anslutningen hör hemma i IPv4-regeln. En enda bred regel gör inte denna uppdelning tillförlitligt synlig.
NAT64 via proxyn i åtta steg
- Välj en hanterad IPv6-only-pilotklient och ett kontrollerat A-only-webbmål.
- Kontrollera IPv6-adress, DNS, proxy-FQDN och TCP-listener för Direct Web Proxy.
- Förbered grundkonfigurationen för Direct Web Proxy, Device Access och PAC-filen eller webbläsarpolicyn.
- Skapa i IPv6-vyn en loggad regel från pilotnätet till proxyporten med målzonen
WAN. - Ange Web Policy och vid behov Match known users i denna IPv6-regel.
- Skapa i IPv4-vyn en andra loggad regel från proxyn till IPv4-målet med HTTP/HTTPS.
- Testa med ett mål utan AAAA-post och kontrollera båda Firewall Rule IDs samt webbfilterbeslutet.
- Lägg till fler klienter först efter positiva och negativa tester; verifiera rollback, HA och SD-WAN separat.
Varför två brandväggsregler behövs
Datavägen byter IP-version i proxyn:
- Klienten ansluter via IPv6 till brandväggens proxylistener.
- IPv6-regeln utvärderar klient, användare, målnamn, proxyport och Web Policy.
- Proxyn slår upp det begärda värdnamnet.
- Om målet bara har en A-post skapar proxyn en ny IPv4-anslutning.
- IPv4-regeln utvärderar detta andra segment och tillämpar till exempel Application Control eller IPS.
Den andra anslutningen är inte längre klientens ursprungliga IPv6-paket. IPv4-regeln ska därför inte utformas som om klientens IPv6-adress måste visas som källa där. Samtidigt bevisar en fungerande IPv6-regel inte i sig att proxyn faktiskt kan nå IPv4-målet.
Sophos kallar denna lösning ett NAT64-scenario. Till skillnad från en klassisk NAT64-gateway routas dock inget IPv6-prefix till valfria IPv4-mål. Applikationer utan stöd för explicit proxy, UDP, ICMP och annan trafik som inte passerar proxyn översätts inte av detta flöde.
Konfigurera Direct Web Proxy med en PAC-fil beskriver den allmänna konfigurationen av listener, PAC, Device Access och rollback. Den här artikeln förutsätter en fungerande grundväg genom proxyn och kompletterar bara med övergången från IPv6 till IPv4.
Exempel och värden som ska ersättas
Flödet använder en liten pilot:
- IPv6-only-klient:
CLIENT6-PROXY-01 - Pilotnät:
2001:db8:20:30::/64 - Brandväggens IPv6-adress i klientnätet:
2001:db8:20:30::1 - Proxy-FQDN:
fw01.corp.example - Proxyport: TCP
3128 - Kontrollerat A-only-mål:
v4-test.corp.example - Dokumentationsadress för målet:
192.0.2.80 - IPv6-regel:
LAN6_DirectProxy_to_IPv4 - IPv4-regel:
Proxy_IPv4_Egress_Pilot - Web Policy:
Web_Standard_IPv6_Pilot
2001:db8::/32, 192.0.2.0/24 och .example är dokumentationsområden. De fungerar inte som produktionsadresser och ska ersättas med organisationens IPv6-prefix, brandväggens faktiska adress och ett kontrollerat DNS-namn. Pilotklienten måste verkligen använda enbart IPv6; en parallell aktiv IPv4-väg skulle göra testet ogiltigt.
Testmålet behöver en A-post men får inte ha någon AAAA-post. En egen liten webbserver eller en kontrollerad virtuell testvärd passar bäst. En slumpmässig publik webbplats är olämplig eftersom dess operatör när som helst kan aktivera IPv6 eller ändra DNS-svaren.
Konfigurera IPv6 Prefix Delegation förklarar hur WAN-prefix, Router Advertisement och DHCPv6 samverkar. NAT64 åtgärdar inte saknad IPv6-adressering i klientnätet.
Kontrollera förutsättningarna
Fyra separata grunder måste fungera innan reglerna skapas:
- Klienten har en giltig IPv6-adress, en default route och fungerande DNS.
fw01.corp.exampleger brandväggens avsedda AAAA-svar i klientnätet.- Direct Web Proxy lyssnar på den dokumenterade porten under Web > General settings > Web proxy configuration, i det här exemplet
3128. - Brandväggen har en fungerande IPv4-WAN-väg till målet.
Under Administration > Device access måste Web proxy vara nåbar för den konkreta klientkällan och den avsedda brandväggsadressen. En bred tillåtelse för hela LAN- eller Wi-Fi-zonen behövs inte för en pilot. Proxygränsen är fortfarande viktig: en tillåten klient kan via denna väg nå lokala HTTP/HTTPS-tjänster på brandväggen. Därför testas administrationsmålen uttryckligen negativt, enligt beskrivningen i grundartikeln.
Klienten får proxy-FQDN och port via en hanterad webbläsarpolicy, en operativsystemsinställning eller en PAC-fil. FQDN måste vara nåbart via IPv6 från IPv6-only-klienten. En IPv6-only-klient kan inte använda en proxyadress som bara har en A-post som första hopp.
Dokumentera befintliga brandväggsregler, Web Policies, autentisering, TLS Inspection och SD-WAN Routes. Placera de två pilotreglerna tillräckligt högt för att de ska utvärderas före en mer generell matchande regel, utan att okontrollerat kringgå befintliga skyddsregler.
Skapa IPv6-regeln till proxyn
Under Rules and policies > Firewall rules, välj först IPv6 och skapa sedan en regel via Add firewall rule > New firewall rule:
- Rule name:
LAN6_DirectProxy_to_IPv4 - Action:
Accept - Log firewall traffic: aktiverat
- Source zones:
LAN - Source networks and devices: IPv6-pilotnät eller enskild pilotklient
- Destination zones:
WAN - Destination networks: kontrollerat FQDN-mål eller, för den senare utrullningen, den medvetet planerade målmängden
- Services: egen TCP-service för
3128 - Match known users: endast med redan fungerande autentisering och avsedda användare eller grupper
- Web filtering > Web policy:
Web_Standard_IPv6_Pilot
Målzonen WAN verkar först ovanlig eftersom klienten tekniskt ansluter till en brandväggsadress. Sophos kräver dock WAN eller Any för att lämna över trafiken till proxykomponenten. Enligt leverantören gäller det även om den slutliga webbservern finns i LAN eller DMZ. Målzonen ska därför inte ändras på antagande till serverns fysiska zon.
Sophos tillåter även Any under Services. Den konkreta listenerporten är tydligare för en pilot och undviker en onödigt bred tillåtelse. Om Web proxy listening port ändras måste service, PAC-/webbläsarinställning, Device Access och tester använda samma värde.
För IPv6-only-endpoints konfigureras användare och grupper i denna IPv6-regel. Web Policy gäller också här. Guiden om brandväggsregler förklarar ordning, loggning och användarmatchning; kategorier och åtgärder planeras i Web Protection Policies.
Skapa IPv4-regeln från proxyn till målet
Byt därefter till IPv4 under Rules and policies > Firewall rules och skapa den andra regeln:
- Rule name:
Proxy_IPv4_Egress_Pilot - Action:
Accept - Log firewall traffic: aktiverat
- Source zones:
Any - Source networks and devices:
Any - Destination zones:
WAN - Destination networks: först det kontrollerade A-only-målet, senare bara den målmängd som verkligen behövs
- Services:
HTTPochHTTPS, eller de målportar som verkligen behövs - Match known users: använd inte detta som ersättning för användarmatchning i IPv6-regeln för detta IPv6-only-flöde
- Other security features: avsedda policyer för Application Control, IPS och vid behov Traffic Shaping
Sophos officiella exempel använder Any för källzon och källnät eftersom proxyn skapar IPv4-anslutningen. Dessa värden ska inte felaktigt ersättas med IPv6-klientnätet. Håll i stället pilotregeln snäv genom mål och services och verifiera den med dess Rule ID.
Web Policy flyttas inte till denna IPv4-regel. Den hör till det första, användarrelaterade proxysegmentet. Application Control och IPS skyddar däremot segmentet mellan proxyn och IPv4-målet. En Traffic Shaping-policy i IPv4-regeln gäller för denna egress; Sophos dokumenterar samtidigt att Traffic Shaping inte gäller för den direkta anslutningen mellan klient och proxy.
Skapa ingen ytterligare NAT64-regel. Brandväggens vanliga IPv4-WAN-väg måste ändå fungera. Om en befintlig IPv4-regel redan täcker denna proxy-egress på ett kontrollerat sätt kan den fortsätta användas efter kontroll av Rule ID och policyer; en andra parallell Any-regel vore då sämre än en medvetet dokumenterad befintlig regel.
Testa den verkliga vägen från IPv6 till IPv4
Förkontroll av DNS och listener
Följande skrivskyddade kontroller är användbara på en Windows-pilotklient:
Resolve-DnsName fw01.corp.example -Type AAAA
Resolve-DnsName v4-test.corp.example -Type A
Resolve-DnsName v4-test.corp.example -Type AAAA
Test-NetConnection fw01.corp.example -Port 3128
Proxy-FQDN måste ge den förväntade IPv6-adressen. Testmålet måste ha en A-post; för AAAA-testet förväntas ingen måladress. Test-NetConnection bekräftar bara TCP-listenern, inte Web Policy, DNS-upplösningen i proxyn eller IPv4-egress.
Verifiera båda reglerna och skyddslagren
- Öppna en ny privat webbläsarsession på IPv6-only-piloten.
- Kontrollera den effektiva proxyn eller den inlästa PAC-filen.
- Öppna det tillåtna A-only-målet.
- Öppna ett mål som avsiktligt blockeras av
Web_Standard_IPv6_Pilot. - Kontrollera i Log viewer IPv6-regeln, källa, användare, Web Policy, åtgärd och Firewall Rule ID.
- Kontrollera för den efterföljande anslutningen IPv4-regeln, IPv4-målet, service, Application Control/IPS och den andra Firewall Rule ID.
- Upprepa målanropet utan proxy som ett negativt test; IPv6-only-klienten får då inte nå A-only-målet direkt via IPv4.
- Testa en applikation utan proxystöd och bekräfta att den inte felaktigt betraktas som NAT64-kompatibel.
Resultatet är bevisat först när målnamnet verkligen är A-only, klienten når proxyn via IPv6, båda förväntade reglerna matchar och det tillåtna respektive blockerade webbtestet visar planerade åtgärder. Testa brandväggsregler systematiskt beskriver hur Rule ID, Log Viewer, Policy Tester och Packet Capture korreleras.
Avgränsa fel systematiskt
Proxyporten är inte nåbar via IPv6
Kontrollera AAAA-svaret för proxy-FQDN, klientadressen, default route, Neighbor Discovery, brandväggsinterfacet och Web proxy under Device Access. Ett lyckat IPv4-test från en annan klient säger inget om IPv6-listenervägen.
IPv6-regeln matchar men målet laddas inte
Bekräfta först att proxyn slår upp målnamnet som en A-post och att brandväggen själv har en fungerande IPv4-WAN-väg. Kontrollera sedan IPv4-regeln, målet, service, ordningen och Rule ID. IPv6-regeln är bara den första halvan.
Bara dual-stack-webbplatser fungerar
NAT64-vägen är ännu inte bevisad. Kontrollera om testmålet har en AAAA-post. Använd ett eget A-only-mål för godkännandet och uteslut en aktiv IPv4-väg på klienten.
Web Policy eller användare är fel
Kontrollera tilldelningen i IPv6-regeln. SFOS utvärderar Match known users i båda reglerna för IPv6-only-endpoints, men Sophos tilldelar uttryckligen dessa inställningar till IPv6-regeln. En användarmatchning i IPv4-regeln får inte ersätta saknad användarkontext i det första segmentet.
Application Control eller IPS tillämpas inte
Kontrollera funktionerna i IPv4-regeln, inte bara i IPv6-regeln. Bekräfta sedan via IPv4 Rule ID att just denna regel verkligen bearbetar proxy-egress. Ett lyckat webbfilterbeslut bevisar inte Application Control eller IPS.
Interna eller lokala mål beter sig oväntat
Även om det slutliga målet finns i LAN eller DMZ kräver IPv6-regeln WAN eller Any för överlämning till proxyn. Den verkliga målzonen representeras i IPv4-regeln. Kontrollera också exponeringen av lokala administrationstjänster genom proxyåtkomsten och de interna DNS-svaren.
SD-WAN, HA och rollback
En SD-WAN Route med services HTTP och HTTPS matchar inte klientanslutningen till proxyport 3128. För det första segmentet måste den faktiska listenerporten eller medvetet Any användas. Proxy-egress behöver dessutom en fungerande WAN-gateway eller statisk returväg. Konfigurera och testa SD-WAN Routes förklarar dessa specialfall.
I HA ska ingen avbrottsfri fortsättning av en befintlig proxyanslutning utlovas. Efter en kontrollerad failover öppnas en ny webbläsarsession och proxy-AAAA, IPv6 Rule ID, Web Policy, IPv4 Rule ID och målåtkomst kontrolleras igen. För logsökningen är det den node som bearbetade den aktuella trafiken som räknas.
För rollback:
- Inaktivera pilotreglerna eller återställ dem till det dokumenterade föregående läget.
- Ta bort det särskilda Device Access-undantaget för piloten om det bara skapades för detta test.
- Ta bort PAC-, GPO- eller webbläsarproxyinställningen från piloten.
- Återställ den tidigare IPv4-/IPv6-regelordningen och SD-WAN-konfigurationen.
- Kontrollera direkt IPv6-åtkomst, befintlig proxytrafik och lokala administrationstjänster igen.
Ta inte bort de två reglerna innan den tidigare vägen är dokumenterad och en öppen administratörssession eller alternativ administrationsåtkomst finns tillgänglig.
Checklista för godkännande
- Klienten är bevisligen IPv6-only.
- Proxy-FQDN ger den förväntade AAAA-adressen.
- Testmålet har en A-post men ingen AAAA-post.
- Direct Web Proxy och Device Access är begränsade till piloten.
- IPv6-regeln använder målzonen
WAN, den faktiska listenerporten, loggning och Web Policy. - Användarmatchning har vid behov klarat positiva och negativa tester i IPv6-regeln.
- IPv4-regeln bearbetar proxy-egress med planerade målportar och skyddsfunktioner.
- Båda Firewall Rule IDs och båda IP-versionerna är bevisade i testet.
- Exponering av administrationstjänster, non-proxytrafik, SD-WAN och HA är medvetet avgränsade.
- Rollback, ansvarig och granskningsdatum är dokumenterade.