Назад | Перейти на главную страницу

DNS - Перенаправление со старого сервера на новый

У меня есть сервер (Сервер A) Windows Server 2003, на котором я размещал некоторые сайты. Теперь они размещены на другом сервере (Сервер B). Недавно я переключил DNS на godaddy, чтобы он указывал на новые серверы имен.

Могу ли я что-нибудь сделать на сервере A, чтобы направить все запросы с сервера A на сервер B (в основном перенаправление с сервера A на сервер B)? Какой это будет тип записи?

Это пока я жду, когда внесенные мной изменения DNS полностью разрешатся.

редактировать

Для дальнейшего уточнения.

test.com все еще может разрешаться на сервер A, я бы хотел, чтобы на сервере A была запись DNS, которая сообщает ему перейти на новый сервер. Это возможно?

Нет записей DNS, которые можно было бы создать для этого. Вам нужно будет дать время для распространения изменений DNS. Уменьшение TTL до часа или около того для двойного значения TTL (обычно за пару дней) до изменения значительно ускорит распространение.

Вы можете проксировать новый сервер со старого сервера. Пока изменения DNS не распространятся полностью, у вас будет некоторый трафик на старом сервере. Вы также можете посмотреть, как выполнить DNAT на брандмауэре для старого сервера, если все домены переместятся.

Вы можете использовать 301 редирект на старом сервере, чтобы указать на новый. В DNS нет возможности сделать это, но это гарантирует, что весь трафик достигает намеченного пункта назначения, в то время как ваши старые записи все еще кэшируются в другом месте.

Это невозможно через DNS, поскольку вы не можете заставить DNS-клиент разговаривать с вашим DNS-сервером. Он может просто использовать уже имеющуюся кэшированную запись. Если бы вы могли заставить его запросить, вы могли бы просто вернуть ему адрес нового сервера.

Вместо этого вы можете настроить сервер A для ответа перенаправлением на сервер B для всех запросов. Я не знаком с Windows Server, но сервер Apache может использовать для этого модуль mod_rewrite.

Другой вариант - установить обратный прокси-сервер на сервере A, заменив ваш веб-сервер, который принимает все запросы и выбирает страницы с сервера B. Сервер A затем возвращает ответ клиенту. Мы используем именно это решение для решения той же проблемы, что и у вас. Мы хотели нулевого простоя при переносе сотен сайтов на новый сервер.

Вы можете легко настроить сервер Nginx или что-то подобное в качестве обратного прокси. Установите его на альтернативный порт, например 8000, и настройте его на обратный прокси-сервер на сервере B. Протестируйте с помощью http: // ServerA: 8000 / если проксирование работает. Выключите веб-сервер на A, освободив порт 80, и измените прокси-сервер для прослушивания порта 80. Теперь он будет обслуживать все входящие запросы через сервер B. Через некоторое время сервер A перестанет получать трафик, когда истечет TTL записей DNS и все клиенты напрямую запрашивают сервер B.

Это очень просто, если у вас есть доступ к DNS-серверу на сервере A.

Пуск -> инструменты администратора -> DNS

См., Например, снимок экрана. Я предполагаю, что в настоящее время у вас есть IP A / CNAME в качестве сервера

Просто измените эти IP на serverb :)

http://i.stack.imgur.com/iW2RD.png