MisHel64
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Я, как началь использовать softether, тоже хочу понять, как именно работает эта фишка. Они пишут, что оно завязано на NAT Traversal. Именно это позволяет "проникать" сквозь NAT | Вот это очень элементарно делается. Клиент А создает туннель с сервером (A-S). Клиент Б то же создает туннель с сервером (B-S). Так как у сервера белый IP, то проблем тут нет, а цвет IP клиента уже не волнует. Когда клиент А хочет что-то передать клиенту Б он заталкивает это что-то в туннель A-S, сервер это что-то заталкивает в туннель B-S. В обратку то же самое. По этому у клиента А создается иллюзия прямой связи с Б. То есть, очень грубо, на клиенте А и Б мы имеет ТРИ сетевые карты. Первая соединена с интернетом, вторая с сервером, а третья, у клиента А напрямую соединена с третьей картой клиента Б. Весь трафик третьей карты специальным образом упаковывается и физически отправляется через вторую. Аналогично и трафик второй карты так же упаковывается и отправляется через первую. Примитивный принцип - туннель в туннеле, он же "NAT Traversal" Цитата: Посему мне бы тоже хотелось услышать, почему по вашему это "однозначно невозможно". | Тут понимаешь, нужно хорошо понимать как устанавливаются IP/TCP соединения. Для этого нужно прочитать теорию про этот протокол. Потом изучить как работает пакетный фильтр. ЛЮБОЙ. Проще всего найти документацию на iptables, именно по этому я его и рекомендовал. Все остальные пакетные фильтры работают по сходному принципу. Все нат, файрволлы, пробросы портов и прочее, это лишь правила для пакетного фильтра, отличающиеся по назначению, и не более. Ну попробую все же грубо объяснить. Для начала, первое заблуждение, что пакетный фильтр применяет правила ко всем пакетам - это не ВЕРНО! Правили применяются только для НОВЫХ пакетов устанавливающих связь. Возьмем простейшую ситуацию. Твой комп с серым IP, гейт с натом, сервер. Твой комп отправляет пакет на сервер, пакетный фильтр установленный на гейте в соответствии со своими правилами переправит этот пакет подменив адрес источника на свой, одновременно создаст запись в таблице замен. Когда сервер отправит ответный пакет, пакетный фильтр просмотрит таблицу замен, и если найдет подходящую, то подменит адрес получателя на твой адрес, и опять поставит этот пакет на обработку, но уже с новым адресом, а на втором круге переправить пакет тебе. Теперь опять твой комп отправляет пакет на сервер. Пакетный фильтр его уже не будет обрабатывать по правилам, а опять просмотрит таблицу замен, подправит адрес источника и отправит на сервер. Теперь представим, что хакер Вася решил вклинится в этот обмен. Он знает и ип гейта и твой серый ип, и номер порта. Что он может сделать? Он может оправить пакет на ип:порт гейта. Вот тут двойная ситуация. Если в этом пакете будет установлен флаг "устанавливаю связь", то пакетный фильтр просмотрит свои правила, и не найдя подходящего дропнет этот пакет (если правильно настроен), или отправит этот пакет ядру, где тот благополучно скончается (а может и нет), но до тебя по любому не дойдет. Если такого флага не будет установлено, то пакетный фильтр просмотрит таблицу, и опять не найдет совпадений, и не найдя подходящего дропнет этот пакет (если правильно настроен), или отправит этот пакет ядру, где тот благополучно скончается (а может и нет), но до тебя по любому не дойдет. Отправить пакет на твой серый IP Вася то же не сможет, его грохнет первый же маршрутизатор. И яще одно заблуждение. Цвет IP это вещь относительная, о чем то же стоить помнить. | Всего записей: 2307 | Зарегистр. 21-09-2006 | Отправлено: 10:53 22-05-2017 | Исправлено: MisHel64, 11:48 22-05-2017 |
|