Teredo (сетевой протокол)

Перейти к навигацииПерейти к поиску

Teredo — сетевой протокол, предназначенный для передачи IPv6-пакетов через сети IPv4, в частности, через устройства, работающие по технологии NAT, путём их инкапсуляции в UDP-дейтаграммы.

Цели

Стандартные средства инкапсуляции IPv6 в IPv4 требуют, чтобы как сервер, так и клиент имели публичный IP-адрес. Однако, в настоящее время многие устройства подсоединены к Интернету IPv4 через одно или несколько устройств NAT, как правило, из-за нехватки IPv4-адресов. В такой ситуации единственный доступный IPv4-адрес принадлежит устройству NAT. Протокол Teredo даёт возможность доступа к IPv6-сетям при такой конфигурации сети.

Обзор

Протокол Teredo обеспечивает:

  1. Проверку соединения UDP over IPv4 (UDPv4) и обнаружение NAT, если таковой имеется в соединении (аналог STUN)
  2. Присваивает конечному устройству уникальный IPv6-адрес
  3. Упаковывает (инкапсулирует) IPv6-пакеты в дейтаграммы UDPv4 для передачи их по сети IPv4
  4. Занимается маршрутизацией между Teredo-хостами и IPv6-хостами

Все хосты с поддержкой Teredo делятся на:

  1. Teredo-клиент — обычный IPv4-хост, который имеет выход в Internet, находится за NAT и использует туннелирующий протокол Teredo для подключения к сети IPv6. Всем клиентам присваивается IPv6-адрес, начинающийся с префикса (2001::/32).
  2. Teredo-сервер
  3. Teredo-релей (relay)
  4. Локальный для хоста релей (host-specific relay) Teredo

Реализации в *nix-системах

  1. ng_teredo маршрутизатор и сервер для FreeBSD, созданный LIP6 и 6WIND.
  2. Miredo клиент, сервер и маршрутизатор для Linux, BSD и Mac OS X.
  3. NICI-Teredo маршрутизатор и сервер для GNU/Linux, созданные National Chiao Tung University.

Безопасность

В настоящее время активно обсуждается безопасность применения протокола Teredo. Основной угрозой является то, что на данный момент не все межсетевые экраны способны фильтровать Teredo-трафик, что может сделать возможным несанкционированное проникновение в IPv6-сеть.

См. также

Ссылки