Posso parar o “Anúncio de Roteador” do IPv6 preenchendo o syslog sem desabilitar o IPv6?

4

Meu syslog se parece com isso:

Apr  1 19:05:25 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:07:35 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:10:26 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:13:10 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:15:13 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:17:01 raspberrypi CRON[8809]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Apr  1 19:18:05 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:20:41 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:24:41 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:27:49 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:29:30 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:29:43 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:31:25 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:35:23 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170
Apr  1 19:36:25 raspberrypi dhcpcd[699]: eth0: Router Advertisement from fe80::c23e:fff:fe63:5170

Eu estou lutando para entender o que é isso, mas faz a varredura através do syslog um pouco irritante (eu sou novo no Linux e configuro as coisas no Raspbian Jessie Lite e tento ficar de olho nisso para ter certeza de que nada eu ' m configuração está causando problemas).

Encontrei muitas informações online dizendo que devo colocar noipv6rs em /etc/dhcpcd.conf , mas o manual diz Disable solicitation and receipt of IPv6 Router Advertisements . Não está claro para mim quais são as implicações disso; Eu realmente só quero que não spam meus logs, em vez de alterar qualquer comportamento.

Eu realmente não sou interessante em mudar o cliente DHCP ou qualquer coisa a partir de agora (estou tentando fazer as alterações mínimas possíveis para a imagem do Raspbian Jessie Lite).

Então; Quais são as implicações de definir noipv6rs e / ou existe uma maneira melhor? Devo apenas definir logfile e deixar o DHCP logar em outro lugar e ignorá-lo?

    
por Danny Tuppeny 02.04.2016 / 13:16

3 respostas

4

O Raspbian usa o rsyslog como seu serviço de syslog. Se você verificar a documentação do rsyslog em condições de filtro , ele poderá informá-lo sobre como fazer isso para qualquer operação de filtro.

Para responder a sua pergunta específica, você pode colocar esta linha perto do topo do arquivo de configuração do rsyslog (geralmente localizado em /etc/rsyslog.conf):

:msg, contains, "Router Advertisement from" stop

Deixe-me quebrar isso ...

:msg Isto especifica que você vai estar olhando para o corpo da mensagem syslog

contains pode estar em qualquer lugar dentro da mensagem

"Router Advertisement from" É isso que você está procurando

~ Esta é a ação de descarte

Você também deve observar que a veiculação no arquivo é relevante, pois as ações são executadas em sequência. O exemplo de descarte dentro da documentação explica isso com mais detalhes.

    
por 27.05.2016 / 09:03
1

Eu verifiquei porque; isso não ajuda, mas talvez seja interessante. Eu não tinha notado isso com um roteador OpenWrt com suporte a IPv6.

/* We don't want to spam the log with the fact we got an RA every
 * 30 seconds or so, so only spam the log if it's different. */
if (options & DHCPCD_DEBUG || rap == NULL ||
    (rap->expired || rap->data_len != len ||
     memcmp(rap->data, (unsigned char *)icp, rap->data_len) != 0))
{
    if (rap) {
        free(rap->data);
        rap->data_len = 0;
    }
    syslog(LOG_INFO, "%s: Router Advertisement from %s",
        ifp->name, sfrom);

Eu não confirmei isso poderia causar a mensagem, mas olhando para o teste acima, notei um suspeito. Ele será registrado se o RA "expirar" antes do próximo ser recebido. Versões posteriores degradam a mensagem para uma declaração de depuração e descrevem um motivo relacionado.

/* We could change the debug level based on new_data, but some
     * routers like to decrease the advertised valid and preferred times
     * in accordance with the own prefix times which would result in too
     * much needless log spam. */
    logger(ifp->ctx, new_rap ? LOG_INFO : LOG_DEBUG,
        "%s: Router Advertisement from %s",
        ifp->name, ctx->sfrom);

É totalmente legal enviar anúncios de roteador que expiram imediatamente. Aparentemente, deve indicar que a fonte não deve ser usada como um roteador padrão, mas o anúncio pode fornecer outras informações que terão sua própria vida útil. (Talvez rotas específicas ou servidores DNS, por exemplo).

Router Lifetime

16-bit unsigned integer. The lifetime associated with the default router in units of seconds. The field can contain values up to 65535 and receivers should handle any value, while the sending rules in Section 6 limit the lifetime to 9000 seconds. A Lifetime of 0 indicates that the router is not a default router and SHOULD NOT appear on the default router list. The Router Lifetime applies only to the router's usefulness as a default router; it does not apply to information contained in other message fields or options. Options that need time limits for their information include their own lifetime fields.

Ambos os comportamentos do roteador que menciono são especificamente recomendados, no caso do seu "roteador de borda do cliente" médio.

To support host implementations that do not handle multihoming in a multi-prefix environment [MULTIHOMING-WITHOUT-NAT], the IPv6 CE router should not, as detailed in the requirements below, advertise itself as a default router on the LAN interface(s) when it does not have IPv6 connectivity on the WAN interface or when it is not provisioned with IPv6 addresses.

Esse conceito pode ser ruim se você tiver alguma configuração herdada que dependa do funcionamento adequado do IPv4 (o legado DHCP não oferece suporte a vários roteadores). Talvez impressoras de rede antigas ou Linux usando o MDNS implementado pelo Avahi para descobrir outros computadores e impressoras, que está desabilitado por IPv6 por padrão.

    
por 27.05.2016 / 10:40
0

Meu Raspbian vem com o serviço dhcpcd executando nos padrões.

Eu alterei o arquivo de configuração, /etc/dhcpcd.conf , adicionando algumas das minhas próprias opções ao final ( aqui está man dhcpcd.conf para quem estiver interessado):

# the rest of the options are above
ipv4only
noipv6
nodhcp6

Em seguida, reinicie o serviço: sudo service dhcpcd restart . Logs mais limpos desde então.

PS: Eu estava paranoico com as opções. Tenho certeza de que apenas um deles teria sido suficiente, mas eu não tenho paciência para testá-los um por um. Comente-me se descobrir qual é.

    
por 13.10.2017 / 21:41