1

Bonjour,

je voudrais vous soumettre un problème auquel pour le moment je n'ai pas trouvé de réponse intéressante.

Je cherche en effet à faire fonctionner des sockets réseau, en C, mais au niveau Ethernet, sans protocole autre que celui qui est nécessaire à la transmission d'une trame (RAW) , pour écrire une app très spécifique qui se situerait entre le routeur et le firewall.

Tous les exemples de sockets que je trouve sont des sockets TCP ou UDP, or cela est trop spécialisé.

Je que je veux en fait, c'est trouver des fonctions équivalentes à:

handle=open_carte(mode_raw)
write_ethernet_packet(handle, &data, longueur)
while(!trame_ethernet_disponible(handle)) {}
longueur=rd_Ethernet_longueur(handle)
read_ethernet_data(&data,longueur)
close_carte(handle)

ou des trucs similaires.
Je sais que ca existe parce que j'ai vu des fonctions de ce genre dans les sources du noyau nux, mais ya tellement de structures nécessaires et de paramètres que je m'y perds, ne sachant pas lesquels sont nécessaires et indispensables.

Le code peut être pour linux ou windows (je pense que là c pas très commode).

Note: Posts inutiles s'abstenir, je ne veux pas que le topic parte en choucroute.
Aussi inutile que le H d'Hawaï

2

Personne n'est inspiré?
Aussi inutile que le H d'Hawaï

3

je crois qu'il y a des headers specialisé sous linuc, va voir dans ton repertoire include (je crois que c'est là) il y en a pour Telnet, ça je sais et pour d'autre aussi alors tu trouveras peut être ton bonheur
http://membres.lycos.fr/pingooz/
Un cafe et deux sucres

4

mici je vais voir!
Aussi inutile que le H d'Hawaï

5

Pour une application que se trouve entre le routeur et le firewall, tu n'as pas besoin de coder des trames ethernet, mais seulement des trames IP (tout simplement parce que seul l'ip est transporté sur Internet par le biais du routeur, entre autres...)

Je te conseille donc d'utiliser les headers IP biens connus des répertoires includes pour le C.. Sinon, je te conseille de décortiquer le logiciel Snort (système anti intrusion sous linux (open source))...

6

Je VEUX trimballer des paquets Ethernet!!! pour les rebalancer sur un port série.

Et j'ai trouvé: http://winpcap.polito.it/

Comme quoi en cherchant!
Aussi inutile que le H d'Hawaï

7

Arf, j'avais oublié Winpcap.... grin

8

y'a aussi lwIP qui remplace une pile IP std et comme c open source je peux la bidouiller au niveau Interface:

http://www.sics.se/~adam/lwip/
Aussi inutile que le H d'Hawaï