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