Połączenie TCP / IP na określonym interfejsie

Chciałbym połączyć się z serwerem za pomocą jednej z dwóch tras sieciowych. Jak to zrobić? Mam Googled dość często, a powszechną odpowiedzią jest manipulowanie tabelą routingu, jednak nie pomoże to, ponieważ miejsce docelowe ma jeden adres IP. Większość przykładów zawiera klienta z pojedynczą kartą sieciową i serwerem z wieloma kartami sieciowymi, ale w tym przypadku jest odwrotnie.

Wydaje się, że aplikacja ForceBindIP jest w stanie oferować tego typu funkcje, więc myślę, że musi być to możliwe.

             +----->-------+
192.168.1.3  |      B      |          192.168.1.4
      +--------+      +--------+      +--------+
      | Client |      | Switch |-->---| Server |
      +--------+      +--------+      +--------+
192.168.1.2  |      A      |
             +----->-------+

W tym celu najprawdopodobniej użyję C ++ i winsock. Muszę być w stanie otworzyć połączenie na danej trasie do woli (tzn. Nie może być statycznie związane z konkretną trasą). Będę używał zwykłego TCP / IP.

EDYCJA: klient Windows 7

questionAnswers(1)

yourAnswerToTheQuestion