环境
宿主机:
IP: 10.110.136.43
版本:Kylin Linux Advanced Server release V10 (Sword)
KVM vm:
IP: 10.110.136.59
版本:UnionTech OS Server 20
故障描述
kvm虚拟机136.59可以被其他服务器ping通,但是ssh时报错:“ssh: connect to host 10.110.136.59 port 22: No route to host”;仅宿主机136.43可以ssh。
分析
- 分析时确定,136.43上的另外一台虚拟机136.56(Kylin V10)能正常访问。
- 分析各个机器的arp,有机器上存在arp信息:
? (10.110.136.59) at 52:54:00:42:3a:97 [ether] on enp111s0f0
- 从136.59对外SSH,相同报错
- 检查各个forward,均开启
- 检查防火墙,136.43防火墙开启
处理
- 关闭宿主机136.43防火墙
- 或者防火墙增加策略
firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -i br0 -j ACCEPT
firewall-cmd --permanent --direct --passthrough ipv4 -I FORWARD -o br0 -j ACCEPT
firewall-cmd --reload
进一步
为什么ping可以通呢?
防火墙默认的策略里ICMP协议是通过的
ACCEPT icmp -- anywhere anywhere