Re: how to improve intelligent nat handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Stewart,

thx for your answer
please find my comments below.


>Hi Tom,

>I'm glad that you got the Draytek working.

>A couple of comments:

>> i am not a developer but IMHO if this help (what it did)  the gnugk can
get
>> the answer from the first request at port 1719 (the registrations
request)

>I think not.  It's a good bet that the Draytek did substitute its public
>IP in the RRQ packet call signal address.  You can run Ethereal on the
>GK machine to verify this.  If so, then gnugk wouldn't discover that the
>endpoint was NATed until the first call in or out.  Then, it might be
>difficult for the code to deal with the change.

I have done a trace with ethereal and found that the Draytek claims to be a
public IP Endpoint so i guess that the Draytek is doing a rewrite of the
signal address. I also can see it at the .log file with  -ttttt that the
client register with a public IP.

>> isn´t it possible to trace the full packet anyway to see if
>> it´s really a public IP Endpoint or Proxy (the private ip address range
is
>> well known) ?

>The "well known" range would be a good start, but it would need to be
settable
>from config file.  There are some reasons to use registered IPs behind
NATs,
>e.g. 9.0.0.0/8 is registered to IBM but intentionally not routable on the
>Internet.  It is also common to use private IPs without NAT.  E.g. an ISP
>assigns customers addresses in 10.0.0.0/8 for voice and video (in addition
>to a public IP for Internet access).  It has its media servers in
>172.16.0.0/12, with non-NAT routing between networks 10 and 172.

OK if I get you right, there is no chance to do a full automatic and the
first possibility to realize that the NATed Endpoint is a faked public
Endpoint is at the first call ( i guess at the logical Channel Setup) i am
right so far?

>>> STUN could potentially help, but that solution would be of no use to
>>> the majority of users with hardware endpoints that are almost always
>>> closed-source.
>> agree with you maybe this is not for the endpoints but it could solve
many
>> problems with a child/proxy GK to give more fault tolerance for broken
NATs
>> and or broken Endpoints.

>If you have a static IP, then you should be able to set NetworkInterfaces
>on the child and accomplish most of what you could do with STUN.  Have you
>tried this? [in 2.0.9; it seems to be broken in 2.2]

In most cases, at all here i Germany i have the Situation of dynamically
assigned IP adresses, so maybe STUN could help to provide the gnugk with
more Information.
But if i understand right it would be more important to have the information
at the parent GK (at the public IP) to do the Channel Setup the right way.

Only a consideration.
The parent GK could know that he has a public IP (maybe a configuration
option or a comparison against a base for most common Public IP Adresses)

A NAT Client is  registering (could also be a normal Endpoint) and the
Router rewrites the signal address and for that he claims to be on a Public
IP Address. (till the first call)

At the RTP Channel Setup there must be an association to the client Type
"Public" or "Private".
If a client claims to be a public client and send at the channel Setup a
private IP (comparison against a private ip address base) something must be
wrong and the gnugk can force a NAT Translation. (like the NATed Endpoint
option but automatically)

So there could be a configuration option to do automatic detection of faked
(public) NATed Endpoints, do NO automatic detection (the situation now) and
add/remove a private address range to/from the standard private address
base.

thx and cu
TOM







-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt

_______________________________________________________

List: Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_id=8549
Homepage: http://www.gnugk.org/

[Index of Archives]     [SIP]     [Open H.323]     [Gnu Gatekeeper]     [Asterisk PBX]     [ISDN Cause Codes]     [Yosemite News]

  Powered by Linux