Обход nat
От: Qulac Россия  
Дата: 02.07.18 09:42
Оценка: :))
Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?
Программа – это мысли спрессованные в код
Re: Обход nat
От: sn175  
Дата: 02.07.18 09:58
Оценка:
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


Читайте про port mapping, его нужно настроить на устройстве, осуществляющем трансляцию сетевых адресов (nat).
Re: Обход nat
От: Слава  
Дата: 02.07.18 10:01
Оценка: +1
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


Клиенты не смогут подключиться.
    Клиент отправляет запрос на подключение к адресу "внешний", порту 5000.
    Хост с адресом "внешний" получает этот пакет и отвергает его, потому что на хосте "внешний" никто не слушает порт 5000
    Порт 5000 слушает хост с адресом "внутренний", находящийся за NAT
    Чтобы подобные запросы , полученные хостом "внешний" уходили на хост "внутренний", нужно на "внешнем" настроить трансляцию порта с адреса "внешний":5000 на "внутренний":5000. Это типичный путь.
    Есть еще нетипичный путь, в общем случае называющийся "пробивание NAT", который обычно используется программами вроде торрент-клиентов, скайпа, софтовых телефонов и прочего p2p. Пробив делается множеством способов, партизанских и нет, с помощью UPnP, STUN и TURN, вши красной, вши жолтой, усениц, мышек, крысок и иных тварей. Надеюсь, когда-нибудь внедрение IPv6 прикончит всё это безобразие.
Отредактировано 02.07.2018 10:14 Слава . Предыдущая версия .
Re: Обход nat
От: vsb Казахстан  
Дата: 02.07.18 10:01
Оценка: 1 (1)
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


Не смогут. За устройством с NAT может быть сто таких серверов. Откуда устройство с NAT поймёт, на какой именно внутренний адрес надо перенаправлять входящие пакеты? Если настроишь port mapping, то без проблем. Есть способы пробивать NAT, но они не всегда надёжные.
Re[2]: Обход nat
От: Qulac Россия  
Дата: 02.07.18 10:02
Оценка:
Здравствуйте, sn175, Вы писали:

S>Здравствуйте, Qulac, Вы писали:


Q>>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


S>Читайте про port mapping, его нужно настроить на устройстве, осуществляющем трансляцию сетевых адресов (nat).


Т.е. в моём примере клиенты не смогут подключиться?
Программа – это мысли спрессованные в код
Re[2]: Обход nat
От: vsb Казахстан  
Дата: 02.07.18 10:04
Оценка:
Здравствуйте, Слава, Вы писали:

С>Надеюсь, когда-нибудь внедрение IPv6 прикончит всё это безобразие.


Чтобы не ухудшать безопасность в сравнение с NAT, любой адекватный IPv6 роутер, имхо, будет блокировать все входящие подключения на компьютеры, которые за ним. Каким образом тут поможет IPv6? Так же, либо лезть в веб-интерфейс роутера и разрешать входящие подключения на такой-то адрес с таким-то портом, либо такими же хаками пробивать дырку в фаерволе.
Отредактировано 02.07.2018 10:05 vsb . Предыдущая версия .
Re[3]: Обход nat
От: Слава  
Дата: 02.07.18 10:13
Оценка: :)
Здравствуйте, vsb, Вы писали:

С>>Надеюсь, когда-нибудь внедрение IPv6 прикончит всё это безобразие.

vsb>Чтобы не ухудшать безопасность в сравнение с NAT, любой адекватный IPv6 роутер, имхо, будет блокировать все входящие подключения на компьютеры, которые за ним. Каким образом тут поможет IPv6? Так же, либо лезть в веб-интерфейс роутера и разрешать входящие подключения на такой-то адрес с таким-то портом, либо такими же хаками пробивать дырку в фаерволе.

Да, отучить Ватсона от трубки будет сложно. Но я думаю, что добрым словом, а также дубинкой и пистолетом, фашизмом и железной палкой удастся:
1) Отучить администраторов тупо запрещать всё то, что не их ума дело, как оно и было во времена до NAT.
2) Научить администраторов гибко настраивать роутеры, прилагая к тому время и силы, как оно и было во времена до NAT.
3) Заставить работодателей этих администраторов платить оным администраторам нормальную зарплату, не требуя обслуживать сразу 5000 хостов в рамках экономии, консолидации, девопса и кроилова — директору на новый мерс. Чтобы у администраторов было время и силы на нормальную настройку, за те же, а то и бОльшие деньги. Как оно и было во времена до NAT, когда программист, знающий три слова на Си, за год зарабатывал на квартиру в Москве.
Re[2]: Обход nat
От: Qulac Россия  
Дата: 02.07.18 10:13
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Здравствуйте, Qulac, Вы писали:


Q>>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


vsb>Не смогут. За устройством с NAT может быть сто таких серверов. Откуда устройство с NAT поймёт, на какой именно внутренний адрес надо перенаправлять входящие пакеты? Если настроишь port mapping, то без проблем. Есть способы пробивать NAT, но они не всегда надёжные.


Ок, всё ясно.
Программа – это мысли спрессованные в код
Re: Обход nat
От: kov_serg Россия  
Дата: 02.07.18 11:50
Оценка:
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?

Разместите свой сервис в сети tor и не заморачивайтесь
https://blackarch.ru/?p=749
Отредактировано 02.07.2018 12:09 kov_serg . Предыдущая версия .
Re: Обход nat
От: a7d3  
Дата: 02.07.18 11:53
Оценка:
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?


Есть такая вещь как https://en.wikipedia.org/wiki/NAT_traversal просто поднять не достаточно, надо ещё и пробрасывать все нужные tcp-порты на устройстве с NAT'ом.

И основная проблема не в том, что подключающийся клиент тоже может быть за NAT'ом, да и NAT'ы бывают разных типов — некоторые из которых являются несовместимыми комбинациями.
Например, вот что имеет место быть если сервер и клиент оба за «симметричными» сцылка, а ведь могут быть и за «конусами».
Re: Обход nat
От: std.denis Россия  
Дата: 02.07.18 11:59
Оценка:
Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?

Смогут. Или нет.
Зависит от типа NAT
Re: Обход nat
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 02.07.18 12:03
Оценка:
Здравствуйте, Qulac, Вы писали:

Q>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?

Опиши, что за проблему тебе надо решить?
Sic luceat lux!
Re[3]: Обход nat
От: Anton Batenev Россия https://github.com/abbat
Дата: 02.07.18 15:15
Оценка:
Здравствуйте, vsb, Вы писали:

vsb> С>Надеюсь, когда-нибудь внедрение IPv6 прикончит всё это безобразие.

vsb> Чтобы не ухудшать безопасность в сравнение с NAT,

NAT не должен использоваться рядом со словом "безопасность".

vsb> любой адекватный IPv6 роутер, имхо, будет блокировать все входящие подключения на компьютеры, которые за ним.


Все больший уход в мобильность (ноутбуки, планшеты, телефоны) снижает значимость фаервола на домашнем роутере и необходимость его настройки — поскольку в процессе своей мобильности ты подключаешься к разным недоверенным источникам, то и домашний WiFi так же можно будет считать недоверенным для упрощения. Дополнительно, после пары неудачных попыток подключения к домашнему телевизору / пылесосу / холодильнику / etc (а подобные устройства получают все большее распространение), среднестатистический пользователь просто выключит фаервол на роутере.

P.S. К сожалению из за "законов Яровой" распространение IPv6 в РФ приостановилось (а где-то даже откатилось), но на горизонте лет в 10 (максимум) это все равно уже неизбежность.
Re[2]: Обход nat
От: Qulac Россия  
Дата: 02.07.18 15:52
Оценка:
Здравствуйте, Kernan, Вы писали:

K>Здравствуйте, Qulac, Вы писали:


Q>>Просветите плиз в чем собственно проблема, т.е. если я за nat-ом подыму tcp сервер и передам клиентам его внешний(за nat-ом) ip, то они не смогут к нему подключиться? Или нет?

K>Опиши, что за проблему тебе надо решить?

Да ни чего особенного, соединить один ком с другим через интернет. Проблема в том, что у меня только один комп для тестирования, в этом случае мне лучше положиться на какую ни будь библиотеку или использовать стандартные настройки для этого. Вот не знаю, вот эта настройка решит мои проблемы или нет?
Программа – это мысли спрессованные в код
Re[4]: Обход nat
От: wildwind Россия  
Дата: 02.07.18 17:23
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>NAT не должен использоваться рядом со словом "безопасность".


Поясни, пожалуйста, что имеется в виду?
Re[2]: Обход nat
От: Pzz Россия https://github.com/alexpevzner
Дата: 02.07.18 18:11
Оценка:
Здравствуйте, a7d3, Вы писали:

A>Например, вот что имеет место быть если сервер и клиент оба за «симметричными» сцылка, а ведь могут быть и за «конусами».


Реализации алгоритма на данный момент не существует, то есть все рассуждения в статье — чисто теоретические, надеюсь, однако, что из-за этого не менее корректные.


Ключевое слово выделено
Re[3]: Обход nat
От: reversecode google
Дата: 02.07.18 18:33
Оценка:
ваши ссылки застарели
технологию обхода симметричного нат придумали еще так в году 2008 два япошки
техника называется UDP multihole punching
но внешний сервер аля stun(только не совсем стюн) нужен, а для надежности нужен еще и второй внешний
что бы порт предикшин работал лучше и не лажал
потом два хоста пробивают дырочки и общаются через симметричные наты напрямую
пробиваемость около 99% если порт предикшин не сильно рандомный
Re[5]: Обход nat
От: reversecode google
Дата: 02.07.18 18:36
Оценка:
если dmz защищается, то настроить нат и забыть — это не безопасно
т.е. защита dmz это не только один нат
Re[5]: Обход nat
От: Anton Batenev Россия https://github.com/abbat
Дата: 02.07.18 19:02
Оценка:
Здравствуйте, wildwind, Вы писали:

w> AB>NAT не должен использоваться рядом со словом "безопасность".

w> Поясни, пожалуйста, что имеется в виду?

NAT — технология преобразования сетевых адресов используемая в качестве хака при недостатке IPv4 адресов. Больше она ни для чего не предназначена и не задумывалась (не является фаерволом, не скрывает внутреннее устройство сети от злоумышленника, и т.д.). Т.е. к обеспечению безопасности отношения не имеет. Это если коротко. Развернуто можно погуглить материалы типа "Why NAT has nothing to do with Security!" (это первое что встретилось) и им подобные.
Бэкапимся на Яндекс.Диск
Re[4]: Обход nat
От: Pzz Россия https://github.com/alexpevzner
Дата: 02.07.18 19:13
Оценка:
Здравствуйте, reversecode, Вы писали:

R>ваши ссылки застарели

R>технологию обхода симметричного нат придумали еще так в году 2008 два япошки

Я это умел в 2005-м, а Hamachi (это не фамилия человека, а название программы) еще и раньше того. Только мы статей не писали

R>пробиваемость около 99% если порт предикшин не сильно рандомный


Пробиваемость между двумя произвольно выбранными компутерами в интернете — 95-97, если верить ребятам из Hamachi; у них достаточно большая выборка. Сейчас, наверное, чушь лучше, по причине вымирания роутеров с симметричным натом.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.