Archived
This forum has been archived. Please start a new discussion on GitHub.
IceStorm help
That I test IceStorm clock demo,which could be successfully executed in the intranet, fails in the internet.
I open the network trace option,subscriber shows that it is trying to establish tcp connection to 10.7.0.174(local address),which is evidently wrong,and should be supposed to connect with the internet address(202.109.*.*)
whether I should modify the config file
thanks
I open the network trace option,subscriber shows that it is trying to establish tcp connection to 10.7.0.174(local address),which is evidently wrong,and should be supposed to connect with the internet address(202.109.*.*)
whether I should modify the config file
thanks
0
Comments
-
Hi,
In the file config, you will need to add an option to specify the endpoint address, like this:
IceStorm.TopicManager.Endpoints=default -p 10000 -h 202.109.1.1
If your publishers also access IceStorm over the Internet, then you must change this property in the same way:
IceStorm.Publish.Endpoints=default -h 202.109.1.1
Finally, the proxy also needs to reflect the address:
IceStorm.TopicManager.Proxy=IceStorm/TopicManager:default -p 10000 -h 202.109.1.1
Take care,
- Mark0 -
hello,
thanks for your immediate reply.
icestormadmin has functioned which implies that TopicManager.Proxy and TopicManager.Endpoints have configed properly,as following:
IceStorm.TopicManager.Endpoints=default -h 202.109.1.1-p 28200 -t 30000
IceStorm.TopicManager.Proxy=IceStorm/TopicManager:default -h 202.109.1.1-p 28200 -t 30000
publish:set as following
IceStorm.Publish.Endpoints=default -h 202.109.1.1
it is still trying to establish tcp connection to 10.7.0.174:28000
so,it fails still.
subscirber:just like publish,I'd like to know the config of subscriber
this is my set:Clock.Subscriber.Endpoints=default -h 202.109.1.1,but it can't function.0 -
Hi,
Are there any firewalls or NAT routers between IceStorm and your publishers or subscribers?
It would be helpful if we could see the output from IceStorm, the publisher, and the subscriber, when all are executed with the --Ice.Trace.Network=1 property.
Thanks,
- Mark0 -
log info
subscriber:
\programworld\Ice-1.4.0\demo\IceStorm\clock>subscriber
[ subscriber: Network: tcp connection established
local address = 10.0.0.1:1988
remote address = 202.109.1.1:28200 ]
[ subscriber: Network: accepting tcp connections at 10.0.0.1:1991 ]
subscriber: .\Network.cpp:501: Ice::ConnectFailedException:
connect failed: WSAETIMEDOUT
[ subscriber: Network: stopping to accept tcp connections at 10.0.0.1:1991 ]
[ subscriber: Network: closing tcp connection
local address = 10.0.0.1:1988
remote address = 202.109.1.1:28200 ]
[ icebox-IceStorm: Network: accepted tcp connection
local address = 10.7.0.174:28200
remote address = 218.79.155.34:10484 ]
[ icebox-IceStorm: Network: closing tcp connection
local address = 10.7.0.174:28200
remote address = 218.79.155.34:10484 ]
publisher:
\programworld\Ice-1.4.0\demo\IceStorm\clock>publisher
[ publisher: Network: tcp connection established
local address = 10.0.0.1:2013
remote address = 202.109.1.1:28200 ]
publisher: .\Network.cpp:501: Ice::ConnectFailedException:
connect failed: WSAETIMEDOUT
[ publisher: Network: closing tcp connection
local address = 10.0.0.1:2013
remote address = 202.109.1.1:28200 ]
[ icebox-IceStorm: Network: accepted tcp connection
local address = 10.7.0.174:28200
remote address = 218.79.155.34:10479 ]
[ icebox-IceStorm: Network: closing tcp connection
local address = 10.7.0.174:28200
remote address = 218.79.155.34:10479 ]0 -
In order to circumvent the firewalls/NAT routers you will need to use Glacier (see the Glacier chapter in the manual). The solution I recommend is to run a Glacier starter on a host on the same network as your IceStorm server (this host must have direct access to the Internet). Your subscriber would need to invoke the startRouter operation and configure itself to use a router, as described in the manual.
Take care,
- Mark0