Я бы хотел, чтобы пользователи могли перенаправлять порт на свой NAT на свой локальный компьютер для моего приложения на C++. Я хотел бы сделать эту работу на OSX & Windows. Linux был бы отличным бонусом, но пользователи Linux, вероятно, более удобны для переадресации портов вручную, поэтому это меньше беспокоит. Код типа LGPL в порядке, но я не могу использовать что-либо прямолинейное GPL.Каковы наилучшие варианты для перенаправления портов NAT?
Я хотел бы услышать какие-либо мысли или переживания кто имеет в этой области, но некоторые конкретные вопросы приходят на ум:
- Есть ли признанная лучшая библиотека для UPNP? Клиент MiniUPNP выглядит так, как будто он может работать, но есть ли что-нибудь еще?
- Что относительно Bonjour? Могу ли я полагаться на него для компьютеров OSX?
- Все большие приложения bittorrent должны иметь дело с этим, так же как существует существующее исследование того, как они это делают? Что о Skype?
Skype не нуждается в переадресации портов в основном режиме - он использует реле (как и многие IM): поэтому соединение с клиентом является исходящим. – 2009-05-10 04:51:51