Eu tenho dois debian9.1-VMs em execução em um host KVM.
Se ambos estiverem na VLAN1, eu posso ssh de uma VM para a outra.
Se eles estão em outra VLAN, eles podem pingar, mas não podem ssh uns aos outros.
Se houver uma terceira VM nessa VLAN em outro host KVM, essa VM poderá ssh as outras duas VMs e poderá ssh dessa VM.
Qual é a razão, por que o ssh não está funcionando, se as VMs estão rodando no mesmo hypervisor?
E o que eu tenho que mudar no host KVM para permitir que as VMs conectem umas às outras - sem ter o host KVM nessa VLAN também?
Como teste, fiz uma nova instalação do debian9.1. Então:
apt-get install vlan
modprobe 8021q
echo "8021q" >>/etc/modules
Depois disso, eu modifiquei /etc/network/interfaces
nas VMs assim:
allow-hotplug ens3
#iface ens3 inet dhcp
auto ens3.23
iface ens3.23 inet static
address 192.168.23.11 # .12 / .21 on the other ones
netmask 255.255.255.0
vlan-raw-device ens3
Agora as VMs estão marcando todos os pacotes para VLAN23.
Eu posso ver essas tags no meu switch, se houver comunicação entre as VMs nos diferentes hosts KVM.
E o resultado é: (VMs .11 e .12 estão no KVM1, o .21 está no KVM2)
.11 <-> .12 ==> no connect
.11 <-> .21 ==> connect
.12 <-> .21 ==> connect
EDITAR: não é mais importante. Eu encontrei uma solução alternativa .
As NICs estavam em virtio
.
Depois de configurá-los para rtl8139
está tudo bem ... e agora é possível fazer o ssh de uma VM para outra - mesmo se eles estiverem rodando no mesmo hipervisor.