winsock mit mehreren Netzwerkkarten



  • Hallo Leute,

    ich verwende derzeit winsock um auf einem Rechner einen Server zu erstellen der verschiedene Anfragen behandelt. Jetzt kommt jedoch noch etwas hinzu der Rechner bekommt nun eine zweite Netzwerkkarte welche an ein komplett anderes Netz angeschlossen ist. Die netzwerkadressen sind statisch vergeben
    So ich möchte jetzt beispielsweise auf der Adresse der Netzwerkkarte0 einen server zur verfügung stellen, und über die Adresse der Netzwerkkarte1 eine Verbindung zu einem anderen Rechner herstellen.
    Wie sieht hierzu die Initialisierung bzw. das Verbinden aus, was muss ich berücksichtigen. Hab leider schon im Internet gesucht aber nichts dazu gefunden, wäre nett wenn ihr mir da ein bischen wieterhelfen könntet.



  • Windows SOCKETS sind auf einer ganz anderen Ebene als die Netzwerkarten, d.h du musst die über die Selektierung der Karten keine Gedanken machen.

    Mal angenommen du hast zwei Verbindungen als "SOCKET"´s vorliegen und möchtest die Daten von Verbindung eins nach Verbindung zwei schicken, dann machst du einfach:

    recv(verbidnung1, ... )
    ...
    send(verbindung2, ...)

    Oder verstehe ich dein Problem nicht?



  • Wenn Du deinen Server-Socket nur auf einer bestimmten Netzwerkkarte hören lassen willst (listen), dann musst Du einfach bei dem "bind" Befehl die IP-Adresse dieser Netzwerkkarte angeben. Wenn Du auf allen "hören" willst, dann gibt man ja "INADDR_ANY" an...
    Und um ausgehende Verbindungen brauchst Du Dich ja gar nicht zu kümmen, da dies ja durch die Routing-Tabelle automatisch definiert wird...


Anmelden zum Antworten