O problema estava relacionado com a pergunta que fiz aqui no Server Fault IP / GRE compilado no kernel mas a interface gre0 não existe .
Eu resolvi a primeira pergunta deixando o driver demultiplexador GRE em gre.c
registrar o manipulador de protocolo GRE no kernel. Mas eu descobri que quando um pacote GRE chega, o manipulador GRE não está apontando para nenhuma função ip_gre.c
(o driver demultiplexador GRE é suposto para verificar a versão GRE no pacote e passar o bloco para o manipulador de protocolo correto, mas no meu caso ele aponta NULL) .
Comentei o trecho de código em que gre.c
registra o manipulador de protocolo GRE e descomentei o trecho de código em que ip_gre.c
registra o manipulador de protocolo GRE. Agora, quando chega um pacote GRE é bem decapsulado e comprometido com a próxima camada, agora eu posso pingar de PC1 para PC2 sem qualquer problema. Acho que esse problema está acontecendo com muitas pessoas em seus dispositivos incorporados porque procurei no Google a mensagem de erro link quando o driver IP GRE não pode ser iniciado porque o driver demultiplexador GRE ainda tinha registrado um manipulador GRE e eu encontrei vários dispositivos com esse erro. / p>