# sshd and IPv6



## minimike (Sep 15, 2011)

Hi there,

Could it be possible that the sshd in the base system can't handle IPv6?

In /etc/ssh/sshd_config I have written:


```
Port 22
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::
```

On my laptop nmap shows me the port is open but if I want log in with ssh like this:


```
ssh -6 username@MY_IPv6_ADRESS
```

nothing happens. The server is proper available over IPv6 and a firewall doesn't block SSH. SSH over IPv4 works. I'm using FreeBSD 8 stable on my server and Debian 6 on my laptop as client.


----------



## ecazamir (Sep 15, 2011)

How long does not happen anything? If it's about 30-120 seconds, it may be a DNS resolution related problem. 
Try setting 'UseDNS no' in /etc/ssh/sshd_config on the server to disable this check and skip the delay.


----------



## AndyUKG (Sep 15, 2011)

minimike said:
			
		

> Hi there,
> 
> Could it be possible that the sshd in the base system can't handle IPv6?



No, it definately works.



> In /etc/ssh/sshd_config I have written:
> 
> 
> ```
> ...



But 0.0.0.0 and :: are not valid IPv4 or IPv6 addresses, what are you trying to achieve? If you set these to valid addresses I'm sure it will work...

thanks Andy.

PS ok, in theory :: is all IPv6. But what happens if you don't comment this out? As I have done....

PPS you did try pinging your IPv6 address didn't you?


----------



## ecazamir (Sep 15, 2011)

AndyUKG said:
			
		

> But 0.0.0.0 and :: are not valid IPv4 or IPv6 addresses, what are you trying to achieve? If you set these to valid addresses I'm sure it will work...



It's fine to use 0.0.0.0, it's the same as INADDR_ANY, a listening address used by default by many server programs, see /usr/include/netinet/in.h. Same rules apply for IP version 6, '::' means INADDR_ANY for IP version 6.


----------



## minimike (Sep 15, 2011)

I've found the reason. The Error was on my client. After fixing it is working fine now


----------

