Настроил домашний сервер под управлением Ubuntu 14.04 и столкнулся с проблемой: на десктопных компьютерах перестал работать EisaltDC++.
Настройки EiskaltDC++ выглядят так:

И с такими настройками всё работало до того, как вместо сервера стоял роутер.
Стал разбираться в чём причина и выяснил, что порт пробрасывается на неправильный адрес:
0x7f48e2873700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: TCP ExtPort: 3000 Int: 192.168.56.1.3000
0x7f48e2873700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: TCP ExtPort: 3001 Int: 192.168.56.1.3001
0x7f48e2873700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: UDP ExtPort: 3000 Int: 192.168.56.1.3000
Откуда берётся адрес 192.168.56.1 я понятия не имею. GREP'ом прошёлся по всему каталогу /etc/, но нигде упоминания о таком IP я не нашёл. В ходе экспериментаторов выяснил, что если включить привязку к интерфейсу, то проброс осуществляется корректно:
0x7f48a1ffb700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: TCP ExtPort: 3000 Int: 10.0.0.100.3000
0x7f48a1ffb700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: TCP ExtPort: 3001 Int: 10.0.0.100.3001
0x7f48a1ffb700 AddPortMap: DevUDN: uuid:75802409-bccb-40e7-8e6c-fa095ecce13e ServiceID: urn:upnp-org:serviceId:WANIPConn1 RemoteHost: (null) Prot: UDP ExtPort: 3000 Int: 10.0.0.100.3000
Но это только в Linux. В той же самой программе под Windows, поле привязки к интерфейсу неактивно:

То есть Windows-клиент заставить работать не удаётся.
Возникает вопрос: кто виноват и что делать?
По первой части вопроса мне кажется ответ понятен - виноват сервер UPnP linux-igd, так как ранее на тех же самых настройках всё работало корректно. А вот вторая часть вопроса остаётся открытой.
На всякий случай прикладываю файлы настроек:
/etc/default/linux-igd
EXTIFACE=eth0
INTIFACE=br0
ALLOW_MULTICAST=yes
/etc/upnpd.conf
iptables_location = "/sbin/iptables"
debug_mode = 2
create_forward_rules = yes
forward_rules_append = no
forward_chain_name = FORWARD
prerouting_chain_name = PREROUTING
upstream_bitrate = 512000
downstream_bitrate = 512000
duration = 0
description_document_name = gatedesc.xml
xml_document_path = /etc/linuxigd
listenport = 0
paranoid = 0
upnp_log_filename = "/var/log/upnp.log"
upnp_log_level = UPNP_CRITICAL
С другим программами, использующими UPnP, проблем не возникает - всё работает корректно.
Пользователь решил продолжить мысль [time]19 Июль 2014, 19:06:58[/time]:
Ага, выяснил, что адрес 192.168.56.1 принадлежит виртуальному сетевому адаптеру VirtualBox на Windows-компьютере. Но от этого ситуация на много яснее не стала.