We have connected two systems with ethernet cables and have configured the two systems with ipv6 addresses. The IP of one system is 2001:0db8:0:f101::1 (let's say X::1) (This system runs OS Fedora 10) and the other is 2001:0db8:0:f101::2. (Let's say X::2) (This system runs OpenSuSE 10.3) We are able to ping from both systems to the other. We are able to ssh into the one with IP X::2 from the one with IP X::1, but not vice versa. We have disabled iptables on both systems by using the following commands:

/etc/init.d/iptables save
/etc/init.d/iptables stop

on the fedora 10 system


# iptables -X
# iptables -t nat -F
# iptables -t nat -X
# iptables -t mangle -F
# iptables -t mangle -X
# iptables -P INPUT ACCEPT
# iptables -P FORWARD ACCEPT
# iptables -P OUTPUT ACCEPT

on the openSuse system.

The error we get in trying to ssh from the openSuse system to the fedora system is :

ssh: connect to host 2001:0db8:0:f101::1 port 22: Connection refused

There is also another problem. We're trying to write server and client code to send data from one system to the other using SOCK_DGRAM. The code works fine when we run both the client and server on the same system. However, we are not able to send data from one system to another when we use the IPv6 addresses to run the client and server programs. The error we get is:

sendto(): Operation not permitted

The codes we are using for the server and client programs can be found in beej's guide SOCK_DRAM client and server code

We've only substituted the appropriate addresses in the right places...

Could anyone tell us what else could be the problem? We've disabled the iptables...