Используя клиент Deluge BitTorrent и находясь за двумя NAT (домашний маршрутизатор + маршрутизатор ISP), я отключил UPnP и NAT-PMP и позволил ему запустить один завершенный торрент, наблюдая за поведением. К моему удивлению, клиент начинает загружать торрент нескольким пирам (через несколько секунд).
Я полагаю, что мой клиент не заинтересован в загрузке файла, по крайней мере, не настолько, чтобы он активно связывался с другими и пытался отправить его. Вместо этого я бы предположил, что он только пассивно прослушивает входящие соединения, запрашивающие файл, и, следовательно, загружает только по прямому запросу. Таким образом, загрузка торрента, который засевается, означает, что кто-то запросил его у меня. Но тогда почему запросы дошли до моего клиента за пределами NAT?
Я, конечно, могу представить себе успешную связь, используя обычную технику обхода NAT, такую как пробивание UDP-дырок, но это все еще требует активного сотрудничества со стороны моего клиента (который не должен знать, что удаленному узлу нужен файл, поэтому он не может взаимодействовать). Итак, как это возможно?