[zeromq-dev] Routers and Nats Question

Brian Duffy brduffy at gmail.com
Sun May 6 22:26:07 CEST 2012

Okay, I read up on Nat traversal (interesting). One more question; is it
worth it? Assuming I am developing an application that would need to handle
port forwarding automatically for users that are not expected to interact
with their routers settings, I am concerned about the drawbacks of Nat
traversal. Specifically, I don't know how many routers might support upnp
or nat-pmp by default, and I don't know if enough routers will be
configured in such a way that STUN will be effective. Also, I really don't
want an external server in my implementation if I can help it. I may just
decide to implement some local blue tooth networking and write a mobile app
so that users can atleast share some data in a personal area network and
then sync back to the clients when in range, but I would be interested in
peoples opinions on implementing automatic port forwarding in their
applications and what luck they may or may not have had.


Brian Duffy

On Sun, May 6, 2012 at 10:44 AM, Daniel Holth <dholth at gmail.com> wrote:

> The address zeromq thinks it is listening on is unimportant for
> establishing a connection. Read up on Nat traversal, you may be able to use
> something like libnice. Iirc you may do something like connect to a helper
> server which reports the post-nat source port and ip and the other end
> opens a connection to that address.
> http://tools.ietf.org/html/draft-ietf-mmusic-ice-tcp-16
> On May 5, 2012 6:50 PM, "Brian Duffy" <brduffy at gmail.com> wrote:
>> Hello again,
>> I'm new to network programming so I hope this is not a silly question ...
>> Now that I have the hwserver and hwclient working between my virtual
>> private server (at vpslink) and local machine, I am wondering, what if I
>> wanted to run the client on the vps machine and the server on my local
>> machine? My local machine is behind a router doing NAT translation. The
>> external ip address is different than what is listed when I do an ifconfig.
>> Ultimately, I want to communicate between machines that would reside in a
>> typical home residence sitting behind home routers and acting as both
>> servers and clients. The vps would act as a location where the
>> server/clients could update a table whenever their dynamic ip addresses
>> changed (similar to dynamic dns). The client/server (home) machines could
>> check the vps server to get the up to date ip address of the machine they
>> are interested in and then communicate directly with another client/server
>> (home) machine. But if the client/server (home) machines have an external
>> and internal ip address, how can I get a (home) client to connect to a
>> (home) server? Is there some way to specify both the external and internal
>> address?
>> Thanks
>> Brian Duffy
>> --
>> Duff
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20120506/c3b1e994/attachment.htm>

More information about the zeromq-dev mailing list