Como esses filtros se aplicam a pacotes de saída e correspondem a fontes IPs, e também os dois últimos comandos tc estão colidindo porque reutilizando o mesmo identificador, entendo que as regras são adicionadas diretamente a cada servidor ou a um roteador se as alças forem alteradas . Não importa na resposta, onde o identificador não será especificado, deixando o sistema para escolhê-los.
Para alternar para uma regra IPv6 equivalente é bastante simples: protocol ip
é substituído por protocol ipv6
, enquanto match ip
é substituído por match ip6
. Obrigado pela inconsistência! O mesmo pref / prio não pode ser usado ao trocar de protocolo. Referência para os dois pontos anteriores: Usando o tc com IPv6 e IPv4 . Basta adicionar um identificador, se necessário (com exclusivo :: nodeid dentro do mesmo pref).
Portanto, para adicionar um atraso para os dois endereços adicionais 2001:db8::10
e 2001:db8::20
, mantenha todas as regras anteriores na pergunta e adicione essas duas regras:
tc filter add dev eth1 parent 1:0 protocol ipv6 pref 56 u32 match ip6 src 2001:db8::10 flowid 2:1
tc filter add dev eth1 parent 1:0 protocol ipv6 pref 56 u32 match ip6 src 2001:db8::20 flowid 2:1
O filtro que está sendo chamado u32
realmente significa que ele está trabalhando em 32bits. Portanto, cada regra usará 4 correspondências porque o endereço IPv6 está usando 128bits.