Hi Bushnu,
The plan is to donate this code back to River after completing River's
modular build (on a per module basis, hopefully it will be more
digestible for community review that way), it may be subject to change
following community review. If people find it useful, that should
improve the likely-hood of it's acceptance, I would appreciate any feedback.
LookupLocator can be used for https unicast lookup as documented:
https://github.com/pfirmstone/JGDMS/blob/trunk/JGDMS/jgdms-platform/src/main/java/net/jini/core/discovery/LookupLocator.java
Reggie needs to be configured to support https unicast, it is not
documented at this time as it is still experimental.
This is the Reggie code that reads in the configuration:
this.httpsUnicastPort = Config.getIntEntry(
config, COMPONENT, "httpsUnicastDiscoveryPort",
443, 0, 0xFFFF);
this.enableHttpsUnicast = config.getEntry(COMPONENT,
"enableHttpsUnicast" ,Boolean.class , Boolean.FALSE);
Using IPv6 multicast requires the following properties to be set, I've
been using IPv6 for some time now. Note only the announcement protocol
can be global. :)
System Property Purpose
java.net.preferIPv6Addresses This property is interpreted as a boolean
value. If true, jini-announcement
<https://pfirmstone.github.io/JGDMS/old-static-site/doc/specs/html/discovery-spec.html#19194>
and jini-request
<https://pfirmstone.github.io/JGDMS/old-static-site/doc/specs/html/discovery-spec.html#40029>
protocols will use IPv6 multicast addresses: IANA IPv6 Multicast
Addresses
<http://www.iana.org/assignments/ipv6-multicast-addresses/ipv6-multicast-addresses.xhtml>
net.jini.discovery.GLOBAL_ANNOUNCE This property is interpreted as a
boolean value. If true, jini-announcement
<https://pfirmstone.github.io/JGDMS/old-static-site/doc/specs/html/discovery-spec.html#19194>
will join the global multicast address group FF0X::155. If false the
jini-announcement protocol will join the site local multicast address
group FF05::155. As defined in RFC4291, IPv6 multicast addresses which
are only different in scope represent different groups. Clients joining
the global group, will not receive site local announcement packets and
vice versa.
You're probably best downloading and building from the latest source as
it contains improvements, however it's also available at Maven Central.
https://mvnrepository.com/artifact/au.net.zeus.jgdms
Regards,
Peter.
On 5/16/2020 7:36 PM, Bishnu Gautam wrote:
Hi Peter
Thanks for your response
It would be great to have Unicast https implementation or also the IPv6
multicast discovery will work for me. Could you share the codes and the
documents about it. I would really appreciate for that.
Sincerely Yours
Bishnu Prasad Gautam
________________________________
From: Peter Firmstone <peter.firmst...@zeus.net.au>
Sent: Wednesday, May 13, 2020 7:52 AM
To: dev@river.apache.org <dev@river.apache.org>
Subject: Re: Further update regarding firewall and NAT issues in River
Hi Bishnu,
Can you use IPv6?
I have a Unicast https implementation (to get through https firewalls)
and IPv6 multicast discovery (can be configured to be global or limited
to your intranet)
There were a number of different types of IPv4 NAT firewalls / routers,
so it was never going to be reliable, I kinda figured it would impact
negatively if users had to debug it.
Cheers,
Peter.
On 5/5/2020 10:32 PM, Bishnu Gautam wrote:
Hello All
Are there any updates regarding firewall bypassing in Apache River. I
have been around Jini Technology a decade ago and was stuck due to its
inability to punch through firewall and NAT. However, there used to
have some threads of working on it by some of the developers. It would
be great if there are any work going on about it.
I came to know that there is a technique of UDP hole punching by which
you can over come this constraint. Please let me know if any body is
working on it that can address the firewall issue. It would be great a
tool specially in IoT networks if we can overcome firewall and NAT issue.
Bishnu Prasad Gautam
Bishnu Prasad Gautam