4.5c version.
There are two hosts: host A,host B
hostA has only one Nic,and only one IP Address: 188.7.16.1.
hostB has only one Nic,and has two IP Address: 188.7.16.2,192.0.0.2
host A pub a topic,and host B sub this topic.
and at same time,host B pub a topic,and host A sub this topic.
why host A and host B are unable to communicate some times?
Why host B cant discovery hostA?
I think that ,host B may be use 192.0.0.2 in DomainParticipant,And host A using 188.7.16.1,so host B cant communicate with Host A,becase there cant ping each other using this two IP. Is Right? Is this problem because of that?
I modify the application in Host B,using "parent.allow_interfaces_list" to specify 188.7.16.2 to communicate with host A. In this way,there is no problem,everything is OK.
But ,My problem is that:the application in Host B,may be run in any other host,such as host C,and host C has other different IP Addresses, for example ,host C may be has 188.7.16.3,192.0.0.3,.....that means I'll moidfy my application to specify 188.7.16.3 when run it is Host C??
My Purpose is that:the application can automatic to use a valid IP Address to communicate with Host A,but needn't modify the application,when I run it in other host?
how can i do it? help me ,please.Thank you very much.
Hi,
I am not sure why it is not working when you have multiple addresses on a single NIC. Normally RTI DDS will try to each a Participanr/Endpoint over all the IP addresses thet the network stack reports it has. I do not think that the addresses being in the same NIC (versus multiple NICs) would impact this, but I suppose it is possible.
Given that the approach ot specifying the "allow_interfaces_list" works and your concern of what will happen when you move the appliction to a different computer then would I wooult try is to use expressions in either the "allow_interface_list" or the "deny_interface_list"
For example try to use either:
parent.allow_interfaces_list 192.0.0.*
parent.deny_interfaces_list 188.*
Gerardo
Thank you.
I have Solve My problem using your advice.
Thank you.