58 lines
1.7 KiB
Text
58 lines
1.7 KiB
Text
|
title: Introducting Kubernetes based IPv4 to IPv6 proxies
|
||
|
---
|
||
|
pub_date: 2021-11-22
|
||
|
---
|
||
|
author: ungleich
|
||
|
---
|
||
|
twitter_handle: ungleich
|
||
|
---
|
||
|
_hidden: no
|
||
|
---
|
||
|
_discoverable: no
|
||
|
---
|
||
|
abstract:
|
||
|
How to proxy from IPv4 to IPv6 in an IPv6 only kubernetes cluster.
|
||
|
---
|
||
|
body:
|
||
|
|
||
|
## The crazy project: IPv6 based IPv4 proxies in Kubernetes
|
||
|
|
||
|
If you know ungleich, you know that we always push the limits of what
|
||
|
is possible. Today we want to push the barrier of "where can
|
||
|
IPv4-to-IPv6 proxies live" a bit further. Let's see how that is going
|
||
|
to look like!
|
||
|
|
||
|
## IPv4-to-IPv6 proxies in general
|
||
|
|
||
|
Before going into the details, let's see how and why we use
|
||
|
IPv4-to-IPv6 proxies in general:
|
||
|
|
||
|
![](/u/image/ipv6-to-ipv4-proxy.png)
|
||
|
|
||
|
The basic idea is that IPv6 only services are made reachable via
|
||
|
IPv4-to-IPv6 proxies towards the IPv4 world. So far we are offering
|
||
|
this based on standard virtual machines. You can checkout
|
||
|
[our previous tech
|
||
|
talk](/u/blog/ungleich-tech-talk-2-accessing-ipv4-only-devices-via-ipv6/)
|
||
|
for details on how this works.
|
||
|
|
||
|
Let's try to dial things up a few notches, shall we?
|
||
|
|
||
|
## Moving the IPv4-to-IPv6 proxy into kubernetes
|
||
|
|
||
|
You are probably aware that at ungleich we are moving our workload
|
||
|
from [cdist](https://cdi.st) + virtual machine automated workloads
|
||
|
towards Kubernetes. At ungleich we are using
|
||
|
[haproxy](http://www.haproxy.org/) as a basis for our IPv4-to-IPv6
|
||
|
proxies. Moving this into kubernetes
|
||
|
|
||
|
|
||
|
|
||
|
## Other solution?
|
||
|
|
||
|
As you can see, mixing the dynamic IP generation and coupling it with
|
||
|
static DNS entries for IPv4 resolution is not the easiest tasks. If
|
||
|
you have a smart idea on how to solve this without manually creating
|
||
|
entries for each and every service,
|
||
|
[give us a shout!](/u/contact)
|