
Если вы отправляете пакет на чей-то маршрутизатор, он, скорее всего, будет отклонен либо брандмауэром маршрутизатора, либо NAT маршрутизатора (если порт не переадресован). Однако в течение короткого времени ваш маршрутизатор будет принимать все входящие пакеты с адреса маршрутизатора, на который вы только что отправили пакет.
Другими словами, брандмауэр вашего маршрутизатора «пробит» насквозь, независимо от того, использует ли маршрутизатор NAT или его брандмауэр настроен на блокировку всех входящих подключений.
Можно ли тем же способом взломать брандмауэр Windows, поскольку брандмауэр Windows может не разрешать входящие соединения с некоторыми программами?
Фоновое чтение
- П. Шрисуреш, Б. Форд и Д. Кегель (март 2008 г.).«Методы, используемые приложениями P2P для обхода NAT».Состояние одноранговой (P2P) коммуникации через трансляторы сетевых адресов (NAT). RFC 5128. IETF.
- пробивка отверстий. Википедия.
решение1
Похоже, это возможно — я наблюдаю, как это происходит с приложением, которое я пишу, и в котором входящие UDP-запросы явно заблокированы.
Вполне возможно, что сторонние брандмауэры могут действовать иначе.
Также смотрите этот пост на stackoverflow, в котором упоминается дырокол в брандмауэре Windows:
https://stackoverflow.com/questions/14856639/udp-hole-punching-timeout