Это в бОльшей степени для себя, что бы не забыть. Если кто-то посчитает нужным из этого сделать статью на howto.ygg будет очень хорошо, но я не возьмусь.
И так.
Первая часть - NAT64:
Берём Линукс. Я использовал Ubuntu. Думаю с Debian тоже проблем не будет. Остальное не проверял.
Устанавливаем yggdrasil как обычно.
В /etc/sysctl.conf добавляем
Скачиваем и устанавливаем jool с официального сайта: https://www.jool.mx/en/download.html
Создаём конфигурационный файл /etc/jool/jool.conf
xxxx меняем на адреса из yggdrasil.
далее всё как обычно - systemctl enable jool; systemctl restart jool
Делаем с любой ygg ноды ping 3xx:xxxx:xxxx:xxxx:ff::8.8.8.8 и наслаждаемся. В процессе наслаждения внезапно понимаем, мы только что сделали доступную всем подряд дырку через ygg в белую сеть. Что бы не пришёл страшный роскомнадзор и не отвык - настраиваем файервол.
Кстати, сделав ping 3xx:xxxx:xxxx:xxxx:ff::192.168.0.1 (или что там у вас) понимаем что это может быть дырка не только наружу но и в уютную локалочку.
Вторая часть - DNS64
Ну адреса у нас пингуются, но ведь хочется удобства, радости и доступа к сайтам по привычным именам. ок, ставим dns64.
Но тут есть три проблемы:
Максимум на что меня хватило - могу поделиться готовым /etc/systemd/system/yggdns64.service
Собственно на этом всё.
И так.
Первая часть - NAT64:
Берём Линукс. Я использовал Ubuntu. Думаю с Debian тоже проблем не будет. Остальное не проверял.
Устанавливаем yggdrasil как обычно.
В /etc/sysctl.conf добавляем
Quotenet.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
Скачиваем и устанавливаем jool с официального сайта: https://www.jool.mx/en/download.html
Создаём конфигурационный файл /etc/jool/jool.conf
Quote
{
"comment": "Configuration for the systemd NAT64 Jool service for yggdrasil.",
"instance": "default",
"framework": "netfilter",
"global": {
"comment": "Sample pool6 prefix",
"pool6": "3xx:xxxx:xxxx:xxxx:ff::/96",
"maximum-simultaneous-opens": 100
},
"comment": "Sample pool4 table",
"pool4": [],
"bib": []
}
xxxx меняем на адреса из yggdrasil.
далее всё как обычно - systemctl enable jool; systemctl restart jool
Делаем с любой ygg ноды ping 3xx:xxxx:xxxx:xxxx:ff::8.8.8.8 и наслаждаемся. В процессе наслаждения внезапно понимаем, мы только что сделали доступную всем подряд дырку через ygg в белую сеть. Что бы не пришёл страшный роскомнадзор и не отвык - настраиваем файервол.
Кстати, сделав ping 3xx:xxxx:xxxx:xxxx:ff::192.168.0.1 (или что там у вас) понимаем что это может быть дырка не только наружу но и в уютную локалочку.
Вторая часть - DNS64
Ну адреса у нас пингуются, но ведь хочется удобства, радости и доступа к сайтам по привычным именам. ок, ставим dns64.
Но тут есть три проблемы:
- Обычные DNS сервера с поддержкой DNS64 работают не совсем так как нам нужно. А именно - они прекрасно умеют трансляцию простых A записей, но, вполне обоснованно, считают, что транслировать существующие AAAA записи не нужно. Если кто нибудь разберётся как это сделать в powerdns, bind или еще каком DNS сервере - будет очень хорошо.
- Автор популярного в наших кругах alfis -
ленивая жопаочень занятой человек, и за пол года так и не нашёл время встроить поддержку DNS64 в свой отличный (без шуток) DNS. - https://github.com/ufm/yggdns64 Но его автор - ленивая жопа
очень занятой человеки поэтому написать на коленке dns64 он смог, а заняться редистрибуцией ему лень. Поэтому сборкой под свою платформу придётся заниматься самому.
Максимум на что меня хватило - могу поделиться готовым /etc/systemd/system/yggdns64.service
Quote
[Unit]
Description=yggdns64
Wants=network.target
After=network.target
[Service]
SyslogIdentifier=yggdns64
WorkingDirectory=/tmp
ExecStart=/usr/local/bin/yggdns64 -file /etc/yggdns64.yml
ExecReload=/bin/kill -HUP $MAINPID
Restart=always
TimeoutStopSec=5
[Install]
WantedBy=multi-user.target
Собственно на этом всё.