Internet connection
In Germany most of the internet service providers offer three different types of connections (independent of DSL or cable):
-> IPv4-only: Customer gets assigned a public IPv4 address
-> Dual Stack: Customer gets assigned a public IPv4 and IPv6 address
-> Dual Stack Lite / DS Lite: Customer gets assigned public IPv6 and private (to the ISP) IPv4 address
Latter is a pain in the … because IPv6 is not backwards compatible to IPv4!
DS Lite and incoming connections
Back in 2018 this excluded most of the mobile devices in Germany (at least connected via Vodafone or T-Mobile). Btw: A solution for this problem would be “port mapping” which I won’t address here.
Let’s imagine a server (like a mailserver) is assigned with an IPv6 address only. This means, no client with just an IPv4 address will be able to connect. Now imagine you run a server like FTP or VPN in your LAN. If your internet router is connected with DS Lite, it can be accessed from the outside via IPv6 only.
DS Lite and outgoing connections
Now you might wonder, if your DS Lite account is limited to IPv6 connections, how is it possible you can still connect to external IPv4 addresses?
This is possible due to your ISP using network address translation, tunneling IPv4 information via IPv6 in his own network. From a high level point of view this is how it works:
-> As you can see you are connected via IPV6 to your ISP.
-> IPv4 based data is transmitted via the public IPv4 interface, owned by your provider.
-> Your home router has NOT assigned a public IPv4 address, but a private one:
If your local device or PC supports IPv6 addresses, it will connect “directly” to the target IPv6 server. Actually the target server will see your PC’s IPv6 address as the origin address, no more hiding behind your routers public IP: