Switched providers the other day, they only assign DSlite-connections. I'm fine, I thought. Thing is - I want to access some of my stuff from outside of my network, which should be of much less a hassle now I got native IPv6.
My new main problem was that I can't assume to have that everywhere I roam, so most of the time I'll try to access from an IPv4-only entry point. Found $ socat was my friend, as I can access one box with true dualstack connection - so accessing my IPv6 from an IPv4-only connection is as easy as running $ socat UDP4-LISTEN:sourceport,fork,su=nobody UDP6:my-ipv6-hostname-behind.cgn:targetport on the dualstacked machine and afterwards connecting to my-dualstack-hostna.me:sourceport from outside.
Now, $ netstat -tulpen | grep sourceport on the dualstacked machine only reveals an UDP4-listener - so my current problem is:
- Access from IPv6-only connection requires me to connect to
my-ipv6-hostname-behind.cgn:targetport - Access from IPv4-only connection requires me to connect to
my-dualstack-hostna.me:sourceport - Access from DS(-lite) connection enables me to use both, but preferably use the direct IPv6-route
So it would be great to be able to use my-dualstack-hostna.me:sourceport for both IPv4 and IPv6 connections and not to root-update the configuration every time I move my laptop or phone!
How to make socat listen on both? There has to be a way! $ netstat -tulpen | grep ":22" on the DS-machine shows these:
tcp 0 0 0.0.0.0:22 […]
tcp6 0 0 :::22 […]