Tayga

Ответить
ya
^-^
Сообщения: 3061
Зарегистрирован: 16 дек 2021, 19:56

Tayga

Сообщение ya »

Tayga — это программный NAT64-переводчик (без сохранения состояния), который работает в пространстве пользователя.

Код: Выделить всё

sudo apt update
sudo apt install tayga
Планирование адресации
Для работы NAT64 вам понадобятся:

IPv6 Prefix: Специальный префикс для сопоставления IPv4-адресов. Стандарт — 64:ff9b::/96.
IPv6 Address: Адрес для самого интерфейса Tayga (например, 2001:db8:1::1).
IPv4 Pool: Диапазон «серых» IPv4-адресов, которые Tayga будет временно назначать IPv6-узлам (например, 192.168.255.0/24).
Static IPv4: Реальный IPv4-адрес вашего Debian-сервера в локальной сети.

Настройка Tayga
Отредактируйте конфиг /etc/tayga.conf:

Код: Выделить всё

# Имя туннельного интерфейса
tun-device nat64

# IPv4 адрес, который Tayga заберет себе
ipv4-addr 192.168.255.1

# Префикс NAT64
prefix 64:ff9b::/96

# Пул для маппинга v6 -> v4
dynamic-pool 192.168.255.0/24

# Путь к хранилищу (создастся автоматически)
data-dir /var/spool/tayga
Настройка сети и маршрутизации
Чтобы трафик пошел через Tayga, нужно поднять интерфейс и разрешить пересылку (forwarding).

Код: Выделить всё

# Включаем форвардинг в ядре
sudo sysctl -w net.ipv4.ip_forward=1
sudo sysctl -w net.ipv6.conf.all.forwarding=1

# Создаем и настраиваем интерфейс (обычно Tayga делает это сама при запуске, 
# но маршруты нужно прописать)
sudo tayga --mktun --dev nat64
sudo ip link set nat64 up
sudo ip addr add 192.168.255.1 dev nat64
sudo ip addr add 2001:db8:1::1 dev nat64 # Ваш локальный v6 IP
sudo ip route add 192.168.255.0/24 dev nat64
sudo ip route add 64:ff9b::/96 dev nat64
Настройка NAT (Masquerade)
Теперь нужно заставить IPv4-трафик, выходящий из Tayga, маскироваться под ваш основной IPv4-адрес, чтобы он мог уйти в интернет.

Код: Выделить всё

sudo iptables -t nat -A POSTROUTING -s 192.168.255.0/24 -j MASQUERADE
sudo iptables -A FORWARD -i nat64 -j ACCEPT
sudo iptables -A FORWARD -o nat64 -j ACCEPT
Как этим пользоваться?
Теперь любой узел в вашей IPv6-сети может «достучаться» до IPv4-интернета, прибавив префикс к обычному IP.
Например, чтобы проверить связь с DNS Google (8.8.8.8), выполните:

Код: Выделить всё

ping6 64:ff9b::8.8.8.8
Важный нюанс: DNS64
Чтобы ваши устройства могли открывать сайты по именам (например, google.com), которые имеют только IPv4-записи, вам понадобится DNS64. Он будет «обманывать» клиентов, синтезируя IPv6-адреса из IPv4-ответов.

Популярный вариант — настроить BIND9 с опцией dns64 или использовать публичный DNS64 (например, от Google или Cloudflare), если у вас есть хоть какой-то выход в v6-интернет.

Предупреждение: Настройка сети — процесс деликатный. Если вы работаете удаленно, убедитесь, что у вас есть доступ к консоли на случай ошибки в правилах маршрутизации.

Важно добавить адрес сетевому интерфейсу тайги

Код: Выделить всё

sudo ip addr add fd00::2/64 dev nat64
ya
^-^
Сообщения: 3061
Зарегистрирован: 16 дек 2021, 19:56

Re: Tayga

Сообщение ya »

sudo systemctl status tayga

Код: Выделить всё

● tayga.service - LSB: userspace NAT64
     Loaded: loaded (/etc/init.d/tayga; generated)
     Active: active (running) since Tue 2026-03-03 00:22:57 +05; 2s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 5086 ExecStart=/etc/init.d/tayga start (code=exited, status=0/SUCCESS)
      Tasks: 1 (limit: 2322)
     Memory: 1.1M
        CPU: 56ms
     CGroup: /system.slice/tayga.service
             └─5112 /usr/sbin/tayga --pidfile /var/run/tayga.pid

Mar 03 00:22:55 inet-deb-mts systemd[1]: Starting LSB: userspace NAT64...
Mar 03 00:22:55 inet-deb-mts tayga[5093]: Created persistent tun device nat64
Mar 03 00:22:55 inet-deb-mts tayga[5112]: starting TAYGA 0.9.2
Mar 03 00:22:55 inet-deb-mts tayga[5112]: Using tun device nat64 with MTU 1500
Mar 03 00:22:55 inet-deb-mts tayga[5112]: TAYGA's IPv4 address: 192.168.255.1
Mar 03 00:22:55 inet-deb-mts tayga[5112]: TAYGA's IPv6 address: 2001:db8:1:ffff::c0a8:ff01
Mar 03 00:22:55 inet-deb-mts tayga[5112]: NAT64 prefix: 2001:db8:1:ffff::/96
Mar 03 00:22:55 inet-deb-mts tayga[5112]: Dynamic pool: 192.168.255.0/24
Mar 03 00:22:57 inet-deb-mts tayga[5086]: Starting userspace NAT64: tayga.
Mar 03 00:22:57 inet-deb-mts systemd[1]: Started LSB: userspace NAT64.
ya
^-^
Сообщения: 3061
Зарегистрирован: 16 дек 2021, 19:56

Re: Tayga

Сообщение ya »

/etc/tayga.conf

Код: Выделить всё

# Ваш NAT64 префикс
prefix 64:ff9b::/96

# Ваш локальный IPv4 (тот самый "non-global")
ipv4-addr 192.168.1.50 

# РЕШЕНИЕ: Явно укажите IPv6-адрес для самого шлюза TAYGA
# Он должен входить в ваш префикс (например, закончиться на ::1)
ipv6-addr 64:ff9b::1
Добавьте адрес: sudo ip addr add fd00::2/64 dev nat64 (или другой из вашей подсети).
Добавьте маршрут для префикса: sudo ip route add 2001:db8:1:ffff::/96 dev nat64.
Включите форвардинг в ядре:

Код: Выделить всё

sudo sysctl -w net.ipv6.conf.all.forwarding=1
sudo sysctl -w net.ipv4.ip_forward=1
Попробуйте пингануть IPv4-адрес, «завернутый» в ваш IPv6-префикс NAT64. Например, для Google DNS (8.8.8.8) это будет:
2001:db8:1:ffff::0808:0808 (или в короткой записи TAYGA).

Код: Выделить всё

ping -6 2001:db8:1:ffff::8.8.8.8
Ответить