If computer A SSHs computer B, can computer B find the IP of computer A? If so, how?
5 Answers
SSH connection info is also stored in the SSH_CONNECTION
environmental variable.
You should be able to view this by entering echo $SSH_CONNECTION
.
Yes. Just run netstat:
netstat --tcp --numeric
Look for the IP using the port 22. --numeric
forces netstat to show IPs and --tcp
only shows TCP connections
-
-
1According to the manpage here: developer.apple.com/library/mac/#documentation/Darwin/Reference/… you should type netstat -n. There is no tcp filtering.– nmatCommented Jul 30, 2011 at 3:24
-
For convenience
netstat --tcp --numeric | grep :22
However, it will show all SSH connections to the server, not the one you are in, which I think is implied in the question. Commented Apr 4, 2017 at 6:43
Yes, and here is how in Windows:
The netstat -a
command shows all conections as they happen.
I am not a Linux guru, but it is very similar, and the actual base command is the same, I believe:
http://www.thegeekstuff.com/2010/03/netstat-command-examples/
-
For the record you would be looking for an IP address with :22 at the end.– KCotreauCommented Jul 30, 2011 at 3:07
For SSH on a specific interface, you can also use
tcpdump -i interface port 22
This will work for linux and mac and if you have a tcpdump port for windows, it will work the same way.
this is what you want, in a terminal:
lsof -i :ssh
it gives you the names (if available of computers sshin into your computer), if you speficically want their IP address, maybe you want to ping
the name to see the IP or do an nslookup
or go to http://ip2location.com ....