我有兩台伺服器,.105 和 .104,當 .105 嘗試透過 ssh 或 tcp 連接到 .104 時,我正在嘗試解決「無主機路由」問題。
.104 有一個服務在連接埠 16000 上運行。 .105 仍然可以 ping 通 .104。兩者都運行 CentOS 8。另一台伺服器 .103 能夠透過連接埠 16000 連接到 .104。
在 .105 上:
(base) [root@web etc]# nc 192.168.0.104 16000
Ncat: No route to host.
(base) [root@web etc]# ssh 192.168.0.104
ssh: connect to host 192.168.0.104 port 22: No route to host
.105 也無法 ssh 到 .104(「沒有到主機的路由」),但可以 ssh 到 .103。 .103 可以 ssh 進入 .104。 .104 可以透過 ssh 連接到兩台伺服器。我嘗試了主機名稱和IP位址。
在 .105 上:
base) [root@web etc]# nmap --reason -p 16000 192.168.0.104
Starting Nmap 7.70 ( https://nmap.org ) at 2020-01-20 23:23 UTC
Nmap scan report for 192.168.0.104
Host is up, received arp-response (0.000097s latency).
PORT STATE SERVICE REASON
16000/tcp filtered unknown admin-prohibited ttl 64
MAC Address: 00:50:56:A5:F5:47 (VMware)
Nmap done: 1 IP address (1 host up) scanned in 0.51 seconds
不確定過濾會發生在哪裡,因為兩台伺服器之間沒有任何東西。兩者都是同一台實體機器上的虛擬機器。
我已經仔細檢查了網路和防火牆配置,但不知道問題可能是什麼。任何幫助,將不勝感激。
在 .104 上(伺服器 .105 正在嘗試連線):
[root@winst ]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens192
sources:
services: cockpit dhcpv6-client http ssh
ports: 16000/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
在 .103 上(第三台伺服器僅用於故障排除,可連接到 .104):
[root@monitoring ]# nmap 192.168.0.104
Starting Nmap 7.70 ( https://nmap.org ) at 2020-01-20 23:53 UTC
Nmap scan report for 192.168.0.104
Host is up (0.000097s latency).
Not shown: 996 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp closed http
3306/tcp open mysql
9090/tcp open zeus-admin
MAC Address: 00:50:56:A5:F5:47 (VMware)
Nmap done: 1 IP address (1 host up) scanned in 14.84 seconds
在 .105(有問題的伺服器)上:
Starting Nmap 7.70 ( https://nmap.org ) at 2020-01-20 23:53 UTC
Nmap scan report for 192.168.0.104
Host is up (0.000078s latency).
Not shown: 999 filtered ports
PORT STATE SERVICE
2049/tcp open nfs
MAC Address: 00:50:56:A5:F5:47 (VMware)
Nmap done: 1 IP address (1 host up) scanned in 5.63 seconds
這可能與我為 nfs 建立的新區域有關嗎?在我不得不重建 .105 之前不久,我可能已經添加了 nfs 區域,並且可能沒有註意到它破壞了其他訪問。
在 .104 上:
[root@winst]# firewall-cmd --get-active-zones
nfs
sources: 192.168.0.105 192.168.0.5
public
interfaces: ens192
答案1
看起來有一個單獨的 nfs 區域,其中的源為 0.105,這就是它的作用。一旦我刪除了該區域,.105 就可以進行 ssh 並連接到連接埠 16000/tcp。