Мне интересно, возможно ли использовать IPv4 anycast, чтобы несколько компьютеров в одной подсети IP обрабатывали запросы от других машин, также находящихся в одной подсети.
У меня есть два DNS-сервера в моей локальной сети. Поскольку я узнал, что наличие двух DNS-серверов на разных IP-адресах не помогает избыточности (короткая причина: хосты не всегда будут переключать IP-адреса и будут продолжать использовать IP-адреса автономного сервера), я хотел бы настроить некоторые anycast-IP-адреса таким образом, чтобы DNS запросы будут отправлены на любой работающий DNS-сервер.
Что касается anycast, он в основном используется для маршрутизации трафика на разные сайты с использованием BGP или в разные пункты назначения в большом сайте с несколькими маршрутизаторами. В моем случае есть только один коммутатор, соединяющий все, и маршрутизация в локальной сети доходит до ARP.
Я не могу найти никакой информации о том, как можно настроить anycast в этой ситуации. Вы можете просто назначить двум или более хостам один и тот же IP-адрес, и коммутатор определит, на какой порт отправлять пакеты, отбросит порт и очистит запись ARP, если сервер переходит в автономный режим? Будут ли хосты переиздавать ARP-запросы, если пакеты внезапно перестанут отвечать? Вы должны поделиться MAC-адресом, а также IP? Или нельзя использовать anycast с этой настройкой, и требуется протокол маршрутизации?
источник
Ответы:
Нет, anycast не работает таким образом. Ваши DNS-клиенты увидят, что IP-адрес настроенного DNS-сервера находится в той же подсети, ARP для его MAC-адреса, а затем попытаются отправить пакет напрямую. Находясь в той же подсети, коммутатор просто перенаправит пакет на сервер.
Нет, назначение двух разных систем с одинаковым IP-адресом вызовет конфликт IP-адресов. Это может вызвать такие проблемы, как потеря пакетов и прерывистое соединение. Не делай этого.
Если весь сервер выходит из строя, то да, клиент начнет отправлять запросы ARP. Если происходит сбой только службы DNS (сеть все еще работает), ARP-вход не происходит. Запросы DNS будут просто превышены по времени или сбой.
Нет, это также приведет к проблемам в сети.
Протокол требуется.
ТЛ; др
Anycast сложен и не подходит для небольших одиночных развертываний. Придерживайтесь двух DNS-серверов, которые у вас есть.
источник