Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何通过ssh获取当前连接的远程主机的主机名或mac地址_Bash_Ssh - Fatal编程技术网

Bash 如何通过ssh获取当前连接的远程主机的主机名或mac地址

Bash 如何通过ssh获取当前连接的远程主机的主机名或mac地址,bash,ssh,Bash,Ssh,当您通过ssh远程登录时,会收到如下消息: Last login: Thu Feb 26 12:28:42 2015 from zxin10-pc.private-net.com 此详细信息适用于以前的用户。 当ssh会话仍在运行时(例如HS-pc.private-net.com),并且ssh主机位于防火墙后面(使用natted IP),是否可以捕获当前远程用户计算机的域名 我试过: echo $SSH_CLIENT : $SSH_CONNECTION 但它只显示IP地址 remoteip=

当您通过ssh远程登录时,会收到如下消息:

Last login: Thu Feb 26 12:28:42 2015 from zxin10-pc.private-net.com
此详细信息适用于以前的用户。 当ssh会话仍在运行时(例如HS-pc.private-net.com),并且ssh主机位于防火墙后面(使用natted IP),是否可以捕获当前远程用户计算机的域名

我试过:

echo $SSH_CLIENT : $SSH_CONNECTION
但它只显示IP地址

remoteip= $SSH_CLIENT | awk '{print $1}'
dig -x $remoteip

; <<>> DiG 9.5.0-P2 <<>> -x 10.21.19.141
;; global options:  printcmd
;; connection timed out; no servers could be reached
remoteip=$SSH_CLIENT | awk'{print$1}'
dig-x$remoteip
;  挖掘9.5.0-P2-x 10.21.19.141
;; 全局选项:printcmd
;; 连接超时;无法访问任何服务器
我不能使用
arp
,因为
arp
没有超出防火墙


有没有办法在远程用户会话期间获取其域名、主机名或MAC地址?

您可以使用
我是谁
命令。对你有用吗?但是,如果在
NAT
之后,您将只看到防火墙的IP/主机名。您可以使用
last
命令
last | awk'{print$3;exit}'
通过DNS查找主机名。看起来DNS也不适合你。你知道为什么吗?你的服务器看到的MAC地址对你没有用处,因为它是你服务器网段的本地地址。嘿,Nazaf,last没有主机名列表,@Michael,服务器被防火墙拦截,我必须与网络管理员确认dns是否被防火墙拦截