Já fiz esta pergunta no #networking e no #freebsd IRC
canais em Freenode mas ninguém foi capaz de responder a minha pergunta e
me encaminhou aqui como parece esta questão é pontual para resolver.
Eu tenho um hipervisor Proxmox onde são hospedados contêineres LXC e KVM
máquinas que vão do Debian 9, Arch Linux e Windows. Todos eles são
ligado ao hipervisor e a pilha IPv6 está funcionando perfeitamente com
endereços IP públicos fornecidos pelo meu ISP e encaminhados diretamente para as VMs.
Uma das VMs que tenho é um dispositivo de firewall do OPNsense (baseado no FreeBSD
11.0-RELEASE-p8).
Ao contrário do outro LXC / KVM, este último não pode fazer ping em nenhuma máquina IPv6
fora daqueles acessíveis diretamente da ponte. Assim que eu tento pingar
o gateway do meu hipervisor (ainda em IPv6) ou qualquer outro
os hosts IPv6 ausentes (por exemplo, google.com), recebi a seguinte mensagem de erro:
[...]
ping6: sendmsg: No buffer space available
[...]
- Primeiramente, achei que o problema ocorreu devido a problemas com os drivers do VirtIO
(empacotado com o FreeBSD). Então eu mudei para NIC Intel E1000 emulada, mas
o problema persiste. (Estou de volta com o VirtIO agora).
- Um netstat -m informa os buffers como vazios, então o problema não vem
daqui também.
-
Colocando a interface para baixo e para cima novamente ou reiniciando consertar o
questão .
- testei com uma nova instalação do FreeBSD e do OpenBSD (para evitar
Sobreposição do OPNsense), mas o problema também persiste.
Fazendo ping da VM a partir da ponte ou de uma máquina completamente
fora da infra-estrutura não responde, nem conecta (ou seja, eu tinha
começou o sshd em 2222, mas não conseguiu se conectar).
O host do FreeBSD é configurado assim:
ifconfig vtnet0 <ipv4>/32
route add <gw ipv4> -iface vtnet0
route add default <gw ipv4>
ifconfig vtnet0 inet6 <ipv6> prefixlen 64
route add -inet6 <gw ipv6> -iface vtnet0
route add -inet6 default <gw ipv6>
Por favor, note que todos os meus GWs estão fora das minhas sub-redes IP.
Após aplicar essas linhas, as rotas relatadas pelo netstat -rn são
Sensível para mim. Nada de errado.
Preciso que o firewall pf esteja completamente desativado (pfctl -d). eu quero
certifique-se de que isso está funcionando perfeitamente antes de ativar outro nível
de falhas. :)
Existe algum bug em algum lugar da pilha IPv6 do BSD, pois o Linux não é
reclamando de alguma forma? Isso soa estranho porque eu acho que não sou o único em
esta situação e não o único que tem GW fora de seus intervalos de IP.
Agradecemos antecipadamente pelo seu tempo / ajuda.
Atenciosamente.
Perguntado na lista de discussão freebsd-net também