1

Je suis prêt à créer un prototype d'appliance réseau. Cette appliance est supposée manipuler de façon transparente les paquets Ethernet. Il suppose d'avoir deux cartes d'interface réseau ayant une carte connectée à la branche extérieure (c'est-à-dire eth0) et l'autre à la branche intérieure (c'est-à-dire eth1).Création d'un prototype d'appliance réseau à l'aide d'un PC standard avec Linux et de deux cartes réseau

Dans une disposition de réseau typique comme dans l'image jointe, elle sera placée entre le routeur et le commutateur LAN.

Mes plans sont d'écrire un logiciel qui se connecte au niveau du pilote du noyau et de faire tout ce que je dois faire pour les paquets entrants et sortants.

Par exemple, un paquet « sortant » (à eth1) serait manipulé et transmis à l'autre carte réseau (eth0) qui devrait être ensuite transporté à la prochaine espoir

Mes questions sont les suivantes:

  1. Est-ce faisable?
  2. Ces cartes n'auront pas d'adresse IP, est-ce que cela devrait poser problème?

Merci d'avance pour vos réponses.

(Et non, il n'y a pas encore un tel dispositif sur le marché, alors s'il vous plaît, « pourquoi réinventer la roue » style de réponses ne sont pas pertinentes)

typical network diagram http://img163.imageshack.us/img163/1249/stackpost.png

+0

Ceci est plus d'une question ServerFault – monksy

+0

que voulez-vous dire? avez-vous lu ceci jusqu'à la fin? c'est une question de logiciel, pas un matériel du tout. –

+1

AFAIK, Les unités de chiffrement par ligne fonctionnent de manière similaire (2 ports, un PC embarqué et du silicium personnalisé), donc cela peut être fait dans un mélange de matériel et de logiciel, mais je ne connais pas assez de détails pour poster une réponse. –

Répondre

2

Je vous suggère libipq, qui semble faire exactement ce que vous voulez:

Netfilter fournit un mécanisme pour faire passer les paquets de la pile pour mise en file d'attente sur l'espace utilisateur, puis réception de ces paquets dans le noyau avec un verdict spécifiant quoi faire avec les paquets (tels que ACCEPT ou DROP). Ces paquets peuvent également être modifiés dans l'espace utilisateur avant d'être réinjectés dans le noyau.

+0

merci allot, jettera un coup d'oeil à ceci aussi, la recherche de ceci aux secteurs de mur à l'épreuve du feu était un mouvement futé! Si je serais capable de construire un prototype assez rapidement en l'utilisant, je préférerais un scapy qui est très lent comparé à libipq –

+0

En faisant un filtrage/modification intermédiaire, sachez que vous allez probablement introduire une latence significative dans le flux de messages, en particulier si vous transmettez des données dans et hors de l'espace utilisateur. Est-ce que ce sera dans un réseau à large bande passante? Vous voudrez peut-être penser au matériel rapide et à la gestion des paquets au niveau du noyau. –

0

Apparemment, il peut être fait. Je en train d'essayer de construire un prototype à l'aide scapy

0

aussi longtemps que les cartes réseau sont en mode promiscous, ils attrapent des paquets sur le réseau sans avoir besoin d'une adresse IP configurée sur eux. Je sais que cela peut être fait car il ya beaucoup d'entreprises qui produisent le même type d'équipement (IE: Juniper Networks, Cisco, F5, Fortinet ect.)

+0

Eh bien, ils doivent également être pontés. –