Os computadores não podem acessar um ao outro quando ambos se conectam ao hotspot Apple NAT64

0

Temos um aplicativo para iOS na App Store. Para enviar uma nova versão após 1º de junho de 2016, temos de oferecer suporte a uma "rede somente IPv6", de acordo com este link .

Referimo-nos a Documentação da Apple , atualizou um Mac Mini para El Capitan e o configurou para um hotspot NAT64. Este Mac Mini usa Ethernet para se conectar à Internet e compartilha sua conexão à Internet com o Wi-Fi.

Para usar nosso produto, o usuário precisa instalar o aplicativo iOS e o aplicativo Mac e colocá-los na mesma rede (algo como o iPhone está em 192.168.0.1 e o Mac está em 192.168.0.2 no mundo IPv4). Esses dois aplicativos precisam acessar a Internet, que está funcionando sem nenhum problema nesse ambiente.

iPhone--(Wi-Fi)--\
                  --Mac mini--(ethernet)--Router----Internet
Mac-----(Wi-Fi)--/

O problema é que nosso aplicativo iOS (rodando no iPhone, agindo como um cliente TCP) não pode acessar nosso Mac App (rodando em um Mac Book Pro neste caso, agindo como um servidor TCP) neste ambiente IPv6 / NAT64 .

Após alguns testes, acreditamos que o problema está no lado da Apple NAT64, porque no iPhone não podemos nem mesmo fazer ping no Mac (tentamos usar outro MacBook Air para substituir o iPhone, mesmo resultado). O estranho é que às vezes (normalmente acontece depois de continuarmos a pingar no Mac por um tempo) funciona. E uma vez que funciona, sempre funciona. Mas se o iPhone e Mac apenas se conectou ao NAT64, parece que não está funcionando como sempre. Alguém já enfrentou uma situação como essa? É um bug NAT64 da Apple? ou apenas um problema de configuração? Como posso fazer isso funcionar?

Mais informações para sua informação:

ifconfig no Mac mini que tem um NAT64 em execução:

en1: flags=8b63<UP,BROADCAST,SMART,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
    ether 6c:40:08:c0:a7:9e
    inet6 fe80::6e40:8ff:fec0:a79e%en1 prefixlen 64 scopeid 0x5
    inet 169.254.156.123 netmask 0xffff0000 broadcast 169.254.255.255
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active
bridge100: flags=8a63<UP,BROADCAST,SMART,RUNNING,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
    options=3<RXCSUM,TXCSUM>
    ether ae:87:a3:21:fb:64
    inet6 2001:2:0:aab1::1 prefixlen 64
    inet6 fe80::ac87:a3ff:fe21:fb64%bridge100 prefixlen 64 scopeid 0xb
    inet6 2001:2::aab1:ac87:a3ff:fe21:fb64 prefixlen 64 autoconf
    inet6 2001:2::aab1:30d2:e0e9:360c:2bb3 prefixlen 64 deprecated autoconf temporary
    inet6 2001:2::aab1:2d34:d3ae:a433:b6c8 prefixlen 64 deprecated autoconf temporary
    inet6 2001:2::aab1:d0a1:a2e5:5a20:3105 prefixlen 64 autoconf temporary
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x2
    member: en1 flags=3<LEARNING,DISCOVER>
        ifmaxaddr 0 port 5 priority 0 path cost 0
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active

ifconfig no MacBook Pro que atua como servidor TCP:

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether 78:31:c1:d5:cd:6a
    inet6 fe80::7a31:c1ff:fed5:cd6a%en0 prefixlen 64 scopeid 0x4
    inet6 2001:2::aab1:7a31:c1ff:fed5:cd6a prefixlen 64 autoconf
    inet6 2001:2::aab1:fc82:1afd:d541:33cb prefixlen 64 autoconf temporary
    inet 169.254.25.56 netmask 0xffff0000 broadcast 169.254.255.255
    nd6 options=1<PERFORMNUD>
    media: autoselect
    status: active

Registra no iPhone que mostra os endereços IP:

name = en0, addr = fe80::14f8:dd59:a2e9:8f65, scope_id = 3
name = en0, addr = 2001:2::aab1:10d8:247a:a7b9:3c8d, scope_id = 0
name = en0, addr = 2001:2::aab1:2560:58b7:2b6c:ce8b, scope_id = 0
name = en0, addr = 169.254.228.221
    
por Porter Liu 19.07.2016 / 02:26

0 respostas

Tags