Adiciona entradas ARP estáticas quando a rede é ativada

5

Eu tenho alguns dispositivos IP bastante burros em uma sub-rede com meu servidor Ubuntu, e o servidor recebe dados de streaming de cada dispositivo. Eu enfrentei um problema em que quando uma solicitação ARP é emitida para o dispositivo enquanto ele está transmitindo dados para o servidor, a solicitação é ignorada, a entrada de cache expira e o servidor para de receber o fluxo.

Assim, para evitar que o servidor envie solicitações ARP para esses dispositivos, eu gostaria de adicionar uma entrada ARP estática para cada um, algo como

arp -i eth2 -s ip.of.the.device mac:of:the:device

Mas essas entradas ARP "estáticas" são perdidas se a rede estiver desabilitada / habilitada ou se o servidor for reinicializado. Onde é o melhor lugar para adicionar automaticamente essas entradas, de preferência em algum lugar que irá adicioná-las novamente toda vez que a interface eth2 for ativada?

Eu realmente não quero ter que escrever um script que monitore a saída de arp e adicione novamente as entradas de cache se elas estiverem faltando.

Edite para adicionar o meu script final:

Criado o arquivo

 /etc/network/if-up.d/add-my-static-arp

Com o conteúdo:

#!/bin/sh

arp -i eth0 -s 192.168.0.4 00:50:cc:44:55:55
arp -i eth0 -s 192.168.0.5 00:50:cc:44:55:56
arp -i eth0 -s 192.168.0.6 00:50:cc:44:55:57

E, obviamente, adicione a permissão para permitir que ele seja executado:

chmod +x /etc/network/if-up.d/add-my-static-arp

E essas entradas de arp serão adicionadas manualmente ou adicionadas novamente toda vez que qualquer interface de rede for ativada.

    
por jozzas 24.01.2011 / 08:04

2 respostas

9

Veja os scripts em /etc/network/if-up.d . Eles são chamados toda vez que uma interface entra no estado . Você pode criar um script com os comandos necessários e colocá-lo lá.

    
por Mr Shunz 24.01.2011 / 09:28
2
/etc/ethers

Este arquivo deve conter:

mac    ip-address
    
por crester 18.05.2013 / 22:32