google / google/splot-java

IPv6 not working properly on macOS

Aberta
#3 1 comentário 0 reações 0 responsáveis Ver no GitHub
bug P2
Linguagem predominante
Java
Estrelas
18
Forks
7
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

It turns out that the use of IPv6 with the standard Java [Socket](https://docs.oracle.com/javase/7/docs/api/java/net/Socket.html)/[MulticastSocket](https://docs.oracle.com/javase/7/docs/api/java/net/MulticastSocket.html) classes is [broken when not bound to a specific network interface](https://medium.com/@quelgar/java-sockets-broken-for-ipv6-on-mac-5aae72f06b21), which is breathtakingly lame. The problem doesn't seem to affect Linux or Android.

While I would love for this to be #NotOurProblem, this bug has been present in Java for so long that it doesn't look like it is ever going to get fixed.

This means that if we want we want to support IPv6 when used on a Mac, we will eventually need to take matters into our own hands and explicitly bind to specific network interfaces. Unfortunately, most IoT stuff is going to be using IPv6 exclusively, so we ignore it at our peril.

This issue is for discussing possible strategies for best working around this problem and tracking the eventual fix.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Comece revisando o uso de Java Socket e MulticastSocket pela biblioteca e, em seguida, investigue o comportamento documentado do IPv6 no macOS em comparação com Linux e Android. A issue não nomeia arquivos nem testes, e a conclusão permanece indefinida além de concordar com uma estratégia de workaround e acompanhar uma correção futura.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
java
Domínio
embedded-iot, networking
Tipo de issue
Bug
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Estagnada
Clareza
Precisa de esclarecimento
Facilidade para iniciantes
25/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.