ip6tables and ipv6 address setting up problem
I am a beginner to IPv6 and I need help with a problem I am facing while implementing IPv6 support in our product.
The problem in short:
->Our product acts as a host and we use linux 2.4.20 kernel (monta vista linux) with IPv6 enabled.
->we have ip6tables flushed with default policy for INPUT chain set to DROP (so all ipv6 packets will be dropped).
->Now, I am changing the IPv6 address of system using ifconfig.
->Then, after sometime, I am allowing icmpv6 packets and any packets to the new IPv6 address by adding corresponding entries in INPUT chain of ip6tables.
->Still I could not ping the system with the new IPv6 address. From the traces, I can see the neighbor solicitation requests to solicited multicast address are not responded back. Not sure why. can anyone please help me understand whats going on and how to solve this problem?
Reason why I am doing above:
In our system (acts as a host), we have an implementation where we allow user to disable IPv6 (we do this by flushing the ip6tables and setting default policy for INPUT chain to DROP. this will cause all incoming IPv6 packets to be dropped. our applications will still listen on ipv6 addr). But the user is allowed to change the IPv6 address of system while mode is disabled. he can later enable mode. But when he enables the mode, he could not ping the system with new IPv6 address because of the above mentioned problem?
Is there anything that I can do to make the new IPv6 address work after enabling the mode? I like to allow the user to configure IPv6 address even when mode is disabled as per our design.
Thanks in advance...
3COM 4226T seems to play a role in problem
After further analysis, I found that none of the sequences I mentioned above contributes to the problem. Actually when I have 3COM ethernet switch in the topology, I am getting into problems...I will probably post a separate thread with a suitable title for this...