O que você tem em mente é por todos os meios viável. Se é um bom design, não sei dizer.
Eliminar todas as solicitações de eco ICMP destinadas ao roteador:
iptables -t filter -I INPUT -p icmp --icmp-type 8 -j DROP
Eliminar quaisquer pedidos de eco ICMP encaminhados
iptables -t filter -I FORWARD -p icmp --icmp-type 8 -j DROP
O motivo pelo qual você vê cada pacote de hosts é que eles provavelmente estão conectados por meio de um hub, que simplesmente replica o tráfego em um nível inferior. Deixar cair esses pacotes no servidor não os impedirá de chegar aos clientes.
Portanto, para que a última regra funcione, você terá que forçar os hosts a encaminhar todo o tráfego para o roteador. Isso é feito limitando a sub-rede de cada host ao seu próprio endereço (usando uma máscara de sub-rede de 255.255.255.252 para os hosts, enquanto mantém o 255.255.255.0 no roteador). Finalmente, você tem que adicionar uma rota estática a cada tabela de roteamento de hosts, para que ele possa encaminhar seus pacotes para o servidor:
ip r a 192.168.1.1/32 dev eth0
Nesta configuração, o roteador ainda pode executar ping em todos os hosts.