Não é possível pingar o dispositivo remoto via Bluetooth Low Energy usando o endereço IPv6 roteável

2

Eu tenho um servidor CoAP simples em um dispositivo que implementa o perfil de suporte do BLE Internet Protocol que eu queria testar usando o plug-in Mozilla Firefox + Copper. Até agora, consegui me conectar ao meu dispositivo e fazer o ping usando o endereço local do link. Infelizmente, o Firefox não pode acessar endereços locais de link, então, para usar isso, tenho que configurar meu dispositivo com um endereço roteável.

Eu tenho este arquivo de configuração ... /etc/radvd.conf:

interface bt0
{
    AdvSendAdvert on;
    prefix 2001:db8::/64
    {
        AdvOnLink off;
        AdvAutonomous on;
        AdvRouterAddr on;
    };
};

Depois eu configurei um endereço na subnet para a caixa linux, habilitado para encaminhamento e reiniciado o radvd.

sudo ip address add 2001:db8::1/64 dev bt0
echo 1 | sudo tee /proc/sys/net/ipv6/conf/all/forwarding
sudo service radvd restart

Esta é a saída de ifconfig bt0 :

bt0       Link encap:UNSPEC  HWaddr 00-15-83-FF-FE-E8-EB-0B-00-00-00-00-00-00-00-00  
          inet6 addr: fe80::215:83ff:fee8:eb0b/64 Scope:Link
          inet6 addr: 2001:db8::1/64 Scope:Global
          UP POINTOPOINT RUNNING MULTICAST  MTU:1280  Metric:1
          RX packets:111 errors:0 dropped:0 overruns:0 frame:0
          TX packets:116 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:8553 (8.5 KB)  TX bytes:10804 (10.8 KB)

Infelizmente, algo ainda está configurado incorretamente. Ainda posso pingar meu dispositivo usando o endereço de link local ping6 fe80::215:83ff:fee8:eb0b%bt0 , mas quando eu quiser fazer ping com seu endereço roteável, ping6 -I bt0 2001:db8::215:83ff:fee8:eb0b , não tenho respostas.

Qual poderia ser o problema? Há mais alguma coisa que eu preciso configurar?

EDITAR Novo radvd.conf

interface bt0
{
    abro fe80::215:83ff:fee8:eb0b/64 {
        AdvVersionHigh 10;
        AdvVersionLow 2;
        AdvValidLifeTime 2;
    };
    AdvSendAdvert on;
    prefix 2001:db8::/64
    {
        AdvOnLink off;
        AdvAutonomous on;
        AdvRouterAddr on;
    };
};
    
por Al Bundy 04.09.2016 / 15:06

1 resposta

0

Parece que sua configuração radvd não possui as opções ABRO, necessárias para que seu sistema seja reconhecido como um roteador de borda 6LoWPAN.

Uma configuração mínima seria:

interface bt0 {
    abro fe80::215:83ff:fee8:eb0b/64 {
        AdvVersionHigh 10;
        AdvVersionLow 2;
        AdvValidLifeTime 2;
    }
    #...everything else

Note que nesta sub-rotina você precisa usar o endereço local do link do roteador de borda.

E, claro, seus dispositivos devem ser Bluetooth 4.1 (ou superior). Dispositivos 4.0 não funcionarão.

    
por 05.09.2016 / 02:55

Tags