-
приведи таблицу маршрутизации..
-
Насколько я понимаю, в винде, по крайней мере до ХР включительно, это так by design. Ну нету в ней source routing...
-
> Сергей М. © (29.11.13 22:11) [20]
>
> приведи таблицу маршрутизации..
===========================================================================
Список интерфейсов
0x1 ........................... MS TCP Loopback interface
0x2 ...00 13 a9 c3 ae 48 ...... Marvell Yukon 88E8036 PCI-E Fast Ethernet Controller
0x40004 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 95.57.74.136 95.57.74.136 1
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.10 10
95.57.42.16 255.255.255.255 95.57.74.136 95.57.74.136 1
95.57.74.136 255.255.255.255 127.0.0.1 127.0.0.1 50
95.255.255.255 255.255.255.255 95.57.74.136 95.57.74.136 50
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.10 192.168.1.10 20
192.168.1.10 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.1.100 255.255.255.255 127.0.0.1 127.0.0.1 50
192.168.1.255 255.255.255.255 192.168.1.10 192.168.1.10 20
224.0.0.0 240.0.0.0 192.168.1.10 192.168.1.10 20
224.0.0.0 240.0.0.0 95.57.74.136 95.57.74.136 1
255.255.255.255 255.255.255.255 95.57.74.136 95.57.74.136 1
255.255.255.255 255.255.255.255 192.168.1.10 192.168.1.10 1
Основной шлюз: 95.57.74.136
===========================================================================
Постоянные маршруты:
Отсутствует
-
0.0.0.0 0.0.0.0 95.57.74.136 95.57.74.136 1 //<- по этому маршруту пойдут пакеты при биндинге только на 95.57.74.136
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.10 10 //<- а по этому - при биндинге либо только на 192.168.1.10 либо на оба (или все активные)
-
0.0.0.0 0.0.0.0 95.57.74.136 95.57.74.136 1 // <- по этму маршруту идут все пакеты при любом биндинге
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.10 10 //<- а по этому - ни один пакет не идет
-
> по этму маршруту идут все пакеты при любом биндинге
Как могут пойти во внешние сети пакеты от хоста 192.168.1.10 в подсети 192.168.1.0/24 через шлюз 95.57.74.136, находящийся совсем в другой подсети 95.57.74.136/32 ?
-
не знаю, я тоже не могу понять, что происходит, потому и задал этот вопрос...
-
А вот полюбуйся:
idhttp1.BoundIP := '127.0.0.2';
-
> А вот полюбуйся:
>
> idhttp1.BoundIP := '127.0.0.2';
"Socket error #10065
No route to host."
idhttp1.BoundIP := '127.0.0.1';
"Connect timed out"
-
Не будет оно работать.
Windows выбирает первый маршрут из списка.
Единственный выход делать свою реализацию стека TCP/IP а это уже не прикладной уровень. Но через WinPCap можно попробовать.
-
У меня вот появились такие мысли...
Выставил метрику=1 для обоих интерфейсов, но для достижения поставленной цели нужно сменить ОСНОВНОЙ ШЛЮЗ:
===========================================================================
Список интерфейсов
0x1 ........................... MS TCP Loopback interface
0x2 ...00 13 a9 c3 ae 48 ...... Marvell Yukon 88E8036 PCI-E Fast Ethernet Controller
0x40004 ...00 53 45 00 00 00 ...... WAN (PPP/SLIP) Interface
===========================================================================
===========================================================================
Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 95.57.74.136 95.57.74.136 1
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.10 1
95.57.42.16 255.255.255.255 95.57.74.136 95.57.74.136 1
95.57.74.136 255.255.255.255 127.0.0.1 127.0.0.1 50
95.255.255.255 255.255.255.255 95.57.74.136 95.57.74.136 50
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.1.0 255.255.255.0 192.168.1.10 192.168.1.10 20
192.168.1.10 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.1.100 255.255.255.255 127.0.0.1 127.0.0.1 50
192.168.1.255 255.255.255.255 192.168.1.10 192.168.1.10 20
224.0.0.0 240.0.0.0 192.168.1.10 192.168.1.10 20
224.0.0.0 240.0.0.0 95.57.74.136 95.57.74.136 1
255.255.255.255 255.255.255.255 95.57.74.136 95.57.74.136 1
255.255.255.255 255.255.255.255 192.168.1.10 192.168.1.10 1
Основной шлюз: 95.57.74.136
===========================================================================
Постоянные маршруты:
Отсутствует
Как это можно сделать? Тут уже вопрос даж не к кодерам, а просто к сетевикам... =) Знать бы, по какому принципу система выбирает себе этот "основной шлюз"... проблема в том, что винда умудряется время от времени переключать шлюзы самостоятельно... А вот как прописать тот или иной шлюз самостоятельно и чтоб он потом не сменился другим?...