Tot vorig weekend werd alle Internetverkeer hier thuis geroute door een Linux bakje met Shorewall. Port forwarding is daar kinderspel mee. Nu is dat bakje helaas overleden en omdat ik al langer iets aan het stroomverbruik ervan wou doen was dit een goed moment om over te stappen op een compacte en zuinigere hardware router.
Dus heb ik mezelf de D-Link DIR-855 cadeau gedaan. Tot nu toe ben ik er erg over te spreken, maar één ding is me compleet onduidelijk...
Wat is het verschil tussen "Virtual Server" en "Port Forwarding"? Uit de (karige) D-Link documentatie kan ik enkel afleiden dat de functies grotendeels overlappen met als belangrijkste verschillen het feit dat "Virtual Server" slechts één poort kan forwarden maar dan wel naar een eventuele andere poort naar keuze, en "Port Forwarding" kan hele ranges van poorten forwarden (maar zonder mogelijkheid tot verandering van poort).
Ook uit de NT FAQ en andere resources kan ik afleiden dat "Virtual Server" en "Port Forwarding" grotendeels hetzelfde zijn en vaak gewoon als synoniem gebruikt worden.
Maar dat is het niet in mijn geval... Omdat ik het doorgeven van poorten uit de Linux-wereld kende als "Port Forwarding" (duh) heb ik de configuratie van mijn Linux router overgenomen en bij "Port Forwarding" ingevuld in de D-Link. Dat scheen goed te werken voor alle applicaties behalve één: eMule (0.49b)... eMule kan perfect verbinden met het ed2k-netwerk en ik krijg meteen een high id, maar het kad-netwerk (Kademlia) blijft dood. Zelfs bootstrappen met een heel recente nodes.dat geeft geen verbinding met het kad-netwerk.
De poorten in eMule:
- TCP: 4562
- UDP: 4572
De "Port Forwarding" regels in de D-Link DIR-855 (link naar handleiding):
- Enabled: <yes>
- Name: eMule
- IP Address: 192.168.1.8
- TCP Ports To Open: 4562
- UDP Ports To Open: 4572
- Inbound Filter: <none>
- Schedule: <always>
Als ik in eMule de poorttest doe, dan toont de eMule-website aan dat alle poorten correct geforward zijn.
Dus alles lijkt goed te staan, maar toch werkt het Kademlia-netwerk niet...
Puur als experiment besloot ik eens met "Virtual Server" in de D-Link configuratie te spelen. Ik schakelde de eMule forwarder uit en maakte twee nieuwe virtual servers (ik moest er twee maken omdat "Virtual Server" in tegenstelling tot "Port Forwarding" geen verschillende TCP- en UDP-poort toelaat):
De "Virtual Servers" regels in de D-Link DIR-855 (link naar handleiding):
- Enabled: <yes>
- Name: eMule TCP
- IP Address: 192.168.1.8
- Traffic Type: TCP
- Private Port: 4562
- Public Port: 4562
- Inbound Filter: <none>
- Schedule: <always>
- Enabled: <yes>
- Name: eMule UDP
- IP Address: 192.168.1.8
- Traffic Type: UDP
- Private Port: 4572
- Public Port: 4572
- Inbound Filter: <none>
- Schedule: <always>
Volgens de handleiding en uit wat ik kan afleiden uit resources als de NT FAQ zou bovenstaande identiek hetzelfde moeten zijn als de eerder gegeven "Port Forwarding". Maar, vanzodra ik op "Save Settings" in de router klikte zag ik eMule haast onmiddelijk verbinding maken met het kad-netwerk. Ik heb daarna meermaals gewisseld tussen de eMule "Port Forwarding" regel en de "Virtual Servers" en telkens de "Port Forwarding" ingesteld stond was er geen verbinding mogelijk met het kad-netwerk.
Na wat verder experimenteren lijkt het probleem zich enkel voor te doen bij de UDP-poort. De TCP-poort kan perfect bij "Port Forwarding" staan, maar de UDP-poort werkt enkel als ze bij "Virtual Server" staat ingevuld...
Is dit nu een fout in de firmware van deze router (ik heb overigens de laatste)? Of is er wel degelijk een wezenlijk verschil tussen "Port Forwarding" en "Virtual Server" bij gelijke instellingen? Ik zie geen enkele reden waarom de UDP "Port Forwarding" niet zou moeten werken. Andere applicaties als µTorrent werken perfect met zowel TCP als UDP "Port Forwarding".
Dus heb ik mezelf de D-Link DIR-855 cadeau gedaan. Tot nu toe ben ik er erg over te spreken, maar één ding is me compleet onduidelijk...
Wat is het verschil tussen "Virtual Server" en "Port Forwarding"? Uit de (karige) D-Link documentatie kan ik enkel afleiden dat de functies grotendeels overlappen met als belangrijkste verschillen het feit dat "Virtual Server" slechts één poort kan forwarden maar dan wel naar een eventuele andere poort naar keuze, en "Port Forwarding" kan hele ranges van poorten forwarden (maar zonder mogelijkheid tot verandering van poort).
Ook uit de NT FAQ en andere resources kan ik afleiden dat "Virtual Server" en "Port Forwarding" grotendeels hetzelfde zijn en vaak gewoon als synoniem gebruikt worden.
Maar dat is het niet in mijn geval... Omdat ik het doorgeven van poorten uit de Linux-wereld kende als "Port Forwarding" (duh) heb ik de configuratie van mijn Linux router overgenomen en bij "Port Forwarding" ingevuld in de D-Link. Dat scheen goed te werken voor alle applicaties behalve één: eMule (0.49b)... eMule kan perfect verbinden met het ed2k-netwerk en ik krijg meteen een high id, maar het kad-netwerk (Kademlia) blijft dood. Zelfs bootstrappen met een heel recente nodes.dat geeft geen verbinding met het kad-netwerk.
De poorten in eMule:
- TCP: 4562
- UDP: 4572
De "Port Forwarding" regels in de D-Link DIR-855 (link naar handleiding):
- Enabled: <yes>
- Name: eMule
- IP Address: 192.168.1.8
- TCP Ports To Open: 4562
- UDP Ports To Open: 4572
- Inbound Filter: <none>
- Schedule: <always>
Als ik in eMule de poorttest doe, dan toont de eMule-website aan dat alle poorten correct geforward zijn.
Dus alles lijkt goed te staan, maar toch werkt het Kademlia-netwerk niet...
Puur als experiment besloot ik eens met "Virtual Server" in de D-Link configuratie te spelen. Ik schakelde de eMule forwarder uit en maakte twee nieuwe virtual servers (ik moest er twee maken omdat "Virtual Server" in tegenstelling tot "Port Forwarding" geen verschillende TCP- en UDP-poort toelaat):
De "Virtual Servers" regels in de D-Link DIR-855 (link naar handleiding):
- Enabled: <yes>
- Name: eMule TCP
- IP Address: 192.168.1.8
- Traffic Type: TCP
- Private Port: 4562
- Public Port: 4562
- Inbound Filter: <none>
- Schedule: <always>
- Enabled: <yes>
- Name: eMule UDP
- IP Address: 192.168.1.8
- Traffic Type: UDP
- Private Port: 4572
- Public Port: 4572
- Inbound Filter: <none>
- Schedule: <always>
Volgens de handleiding en uit wat ik kan afleiden uit resources als de NT FAQ zou bovenstaande identiek hetzelfde moeten zijn als de eerder gegeven "Port Forwarding". Maar, vanzodra ik op "Save Settings" in de router klikte zag ik eMule haast onmiddelijk verbinding maken met het kad-netwerk. Ik heb daarna meermaals gewisseld tussen de eMule "Port Forwarding" regel en de "Virtual Servers" en telkens de "Port Forwarding" ingesteld stond was er geen verbinding mogelijk met het kad-netwerk.
Na wat verder experimenteren lijkt het probleem zich enkel voor te doen bij de UDP-poort. De TCP-poort kan perfect bij "Port Forwarding" staan, maar de UDP-poort werkt enkel als ze bij "Virtual Server" staat ingevuld...
Regels | ed2k-netwerk | kad-netwerk |
Port Forwarding TCP en UDP (TCP en UDP in één regel) | ja | nee |
Port Forwarding TCP + Port Forwarding UDP | ja | nee |
Virtual Server TCP + Port Forwarding UDP | ja | nee |
Port Forwarding TCP + Virtual Server UDP | ja | ja |
Virtual Server TCP + Virtual Server UDP | ja | ja |
Is dit nu een fout in de firmware van deze router (ik heb overigens de laatste)? Of is er wel degelijk een wezenlijk verschil tussen "Port Forwarding" en "Virtual Server" bij gelijke instellingen? Ik zie geen enkele reden waarom de UDP "Port Forwarding" niet zou moeten werken. Andere applicaties als µTorrent werken perfect met zowel TCP als UDP "Port Forwarding".
A bus station is where a bus stops. A train station is where a train stops... On my desk I have a workstation.