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

как реализовать эластичную IP-подобную архитектуру в частной серверной ферме

Какими способами я могу реализовать эластичную IP-архитектуру в моей частной серверной ферме? Доступен только один глобальный IP-адрес, но я должен иметь возможность использовать ssh для любого сервера из внешней сети, реализовав тот же механизм, что и aws elastic ip? грубо говоря, я хочу сделать следующее: - назначить каждому серверу «виртуальный IP-адрес», как это делает aws (например, c2-111-111-111-111.compute-1.amazonaws.com), который по сути является доменным именем, которое разрешается в глобальный ip. в моем случае весь такой виртуальный IP-адрес разрешается в мой глобальный IP-адрес - теперь перенаправьте запрос на соответствующий сервер во внутренней сети - и почти весь протокол должен работать

Elstic IP работает не так, как вы думаете. Каждое «эластичное» имя хоста, подобное приведенному вами примеру, фактически разрешается на другой IP-адрес, и amazon просто перенаправляет их на экземпляр, на который они ссылаются.

Чтобы делать то, что вы хотите, вам нужны протоколы, поддерживающие передачу запрошенного имени хоста вместе с запросом. HTTP (и HTTPS с SNI) поддерживают это, как и FTP. Однако, вопреки вашему необоснованному утверждению, «почти все протоколы» будут не работают, потому что виртуальный хостинг на основе имен не является широко поддерживаемым методом.

Если вам нужно больше общедоступных IP-адресов, приобретите больше общедоступных IP-адресов. Они не дорогие (пока), и если ваш поставщик услуг не даст вам больше, прекратите удешевлять и используйте для своих бизнес-услуг настоящее соединение бизнес-класса.

Понятия не имею, как работает эластичный ip aws.

Однако хороший способ сделать то, что вы хотите, - просто выполнить двойной ssh ​​вперед.

В этом случае, предполагая, что вы проходите через единственный брандмауэр с именем хоста router.globalnetworks.net, вы можете настроить файл конфигурации ssh примерно так:

Host router
User sysadmin
Port 22
IdentityFile ~/.ssh/id_sysadmin
HostName router.globalnetworks.net
LocalForward 5020 192.168.181.20:22
LocalForward 5021 192.168.181.21:22
...

Следовательно, вы можете подключиться к хосту 192.168.181.20 с помощью

  1. первый идет ssh router; затем
  2. ssh -p 5020 @localhost