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

Comments

  • mes
    mes California
    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,
    - Mark
  • 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.
  • mes
    mes California
    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,
    - Mark
  • network informarion

    ee
    str.jpg 16.7K
  • log info

    subscriber:

    D:\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:

    D:\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 ]
  • mes
    mes California
    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,
    - Mark