Conecte-se ao endereço IP do repositório A se estiver ativo, caso contrário, conecte-se ao endereço IP do repositório B (lado do cliente)

Conecte-se ao endereço IP do repositório A se estiver ativo, caso contrário, conecte-se ao endereço IP do repositório B (lado do cliente)

Há um repositório SVN hospedado em um servidor atrás de vários ISPs e, dependendo da conexão do ISP, o administrador desse servidor SVN altera o endereço IP do repositório e anuncia "ei, nosso endereço IP mudou. Mude todas as suas coisas para xxx.xxx .xxx.xxx, ktchau".

Na maioria dos dias, isso não é muito incômodo. Apenas um pequeno script que realoca todas as minhas cópias de trabalho. Mas, em alguns dias, o endereço IP do repositório muda algumas vezes por dia ou muda em questão de minutos, o que é uma interrupção no trabalho.

Não tenho poder para ajustar a rede que hospeda o SVN (adicionar balanceamento de carga, etc.).

Como devo lidar com isso de forma eficiente do meu lado?

Como um arquivo hosts onde, em vez de atribuir vários nomes de host a um endereço IP, um nome de host lida com vários endereços IP automaticamente.

Repostado de superuser.comjá que parece mais uma questão de falha no servidor.

Responder1

Esta não é uma solução pura do lado do cliente, mas pode funcionar

  1. Crie IN Aregistros em alguma zona,que seu hostmaster pode gerenciar, no servidor DNS,que é o DNS primário do seu lado(pior - qualquer DNS remoto sob o controle do hostmaster)com TTL mínimo possível(obrigatório)
  2. Realoque seu WC para este novo URL de repositório (baseado em nome)
  3. Ao alterar a conexão do ISP IN Adeve ser alterada de acordo com o novo IP (a questão da comunicação eficaz dos lados afetados está fora do escopo da questão atual)
  4. Na reconexão do repo: após o tempo limite não superior ao TTL, na pior das hipóteses (seu servidor DNS não mantém a zona e deve obter dados do NS autoritativo), o cliente poderá se comunicar com o repositório

informação relacionada