Резервный канал для ADSL или для Ethernet - это несколько разных задач. К тому же решение зависит от того, на чём вы его делаете: на самом банкомате или на отдельной железке (маршрутизаторе доступа).
1. Предполагаем, что вы всё переключаете непосредственно на банкомате, и имеете при нём 2
модема, т.е. достаточно простые железки физического уровня. В этом случае всё более-менее просто, потому что абонентские подключения ADSL реализуются так: поверх физики ADSL эмулируется Ethernet (это делает ADSL-модем, или его драйвер на банкомате), а поверх Ethernet - PPP-over-Ethernet (PPPoE) - это уже делает операционка банкомата. Точно так же, как для PPP-соединения через сотовый модем или dial-up. Итого имеем 2 PPP-соединения, всё, что надо сделать - это назначить резервному (сотовому) соединению
метрику маршрута больше, чем основному. Умерло основное соединение PPP-over-Ethernet-over-ADSL - исчез сетевой интерфейс в системе, исчез маршрут через него, остался только "более длинный" маршрут через резервное соединение. Восстановился - снова появился маршрут и встал в таблицу маршрутизации выше резервного. То же самое относится к основному каналу непосредственно через кабель Ethernet, если оно организовано посредством PPPoE, PPTP, L2TP.
2. Если у вас основной канал - чистый Ethernet безо всяких промежуточных инкапсуляций, то ситуация сильно хуже. Порт Ethernet у вас, скорее всего, включён в ближайший коммутатор, а проблема, если возникнет, то за пределами вашего локального сегмента и вообще за пределами здания. И на физике Ethernet вы её никак не увидите. Поэтому нужно задействовать какой-то механизм для зондирования доступности чего-то рядом с вашим процессингом (но не его самого) - либо
ping, либо какие-то
keepalive уже непосредственно в приложениях, либо
keepalive/dead peer detection в туннелях, если они используются. И какой-то механизм, чтобы реагировать на пропадание
и возобновление пинга. Логика работы, для достаточно простого варианта, описана, скажем, в примере:
http://www.nsg.ru/examples/ex_bank_eth_3g.php
Будет время - можно будет разобрать его подробнее.
То же самое можно, в принципе, сделать скриптами под Windows/DOS/etc., но это будет очередное изобретение велосипеда и потребует некоторого труда, минимальных навыков программирования и аккуратности, что не у всех имеется в наличии. Ставить какие-то сторонние готовые приложения - это по сути то же самое, плюс безопасники это обычно не одобряют в принципе.
3. Это одна из причин, почему в современной практике пользуются не модемами, а
маршрутизаторами - это устройства для перенаправления IP-пакетов между сетями. По определению, они имеют свой собственный интеллект для выбора маршрута, а по факту, для современных маршрутизаторов доступа - несколько портов для подключения к разным каналам связи разных операторов + дополнительный интеллект для того, чтобы контролировать их и учитывать их состояние при выборе маршрута. Пример - уже упомянуый механизм
netping в маршрутизаторах NSG (и их аналогах). В этом случае вы подключаетесь к маршрутизатору тупо по Ethernet, а все дальнейшие задачи контроля и выбора каналов связи решены у него на борту, за вас. (Естественно, настройка этих механизмов всё равно остаётся на вас.)
4. Переключение на резервный канал и обратно - это только часть истории, увы... После переключения вы получите другой IP-адрес, окажетесь в сети другого оператора - и, с точки зрения процессинга, станете другим клиентом. Вам надо будет инициализировать сеанс работы с самого начала, а ваш старый сеанс умрёт (молитесь, чтобы это случилось не в момент транзакции) и в конце концов будет похоронен по таймауту. Ваш софт нормально к этому относится? Если нет, то для этого у NSG существует отдельное решение под названием uiTCP, но это будет уже совсем отдельная история.
ps. Интерфейсов ADSL у маршрутизаторов NSG нет и уже не будет, это в прошлом. Тупо берёте любой китайский ADSL-модем или маршрутизатор, настроенный в режиме моста (так на нём выполняется минимальный объём операций и, соответственно, минимальные шансы зависнуть), а PPPoE поднимаете на NSG.
pps. Насчёт цен NSG - а кому сейчас легко? Но есть надежда вскорости начать не радовать немного менее, чем сейчас...