O problema

O problema

O problema

Eu sei como adicionar bloco à interface. Mas eu realmente não sei como usar endereços específicos dinamicamente.

O que eu quero

Por exemplo:

  • Eu tenho um bloco fe80::/32 para minha aplicação.
  • Deixarei meu usuário acessar o servidor por um único endereço IPv4 com credencial.
  • Vou enviar gancho com IPV6
  • Quero dar a cada usuário um endereço específico para enviar.
  • usuárioA: fe80::1usuárioB:fe80::2

Eu tenho um bloco inteiro para isso, então haverá muitos usuários usando este serviço.

O que eu fiz

Mas acho que não consigo vincular a solicitação a um endereço específico, isso causará errno99.

Eu estava usando curl para testar se o Linux suporta as funções que desejo, mas descobri que não consigo.

Como eu testo:

Servidor de teste com intervalo

servidor

python3 -m http.server --bind ::

cliente

curl -vvv -6  "http://[fe80::3]:8000"
curl -vvv -6  "http://[fe80::4]:8000"

Isso funcionará. Porque o servidor está escutando todos os endereços. Então você pode acessar com qualquer um deles.

Cliente de teste com intervalo

Servidor

python3 -m http.server --bind ::

cliente

curl -vvv -6 -i "fe80::2" "http://[fe80::1]:8000"
curl -vvv -6 -i "fe80::3" "http://[fe80::1]:8000"

Isso não funcionará. Curl vai lançar errno99

Vincule cada ip à interface

Eu tenho toda uma gama de ip, que LOUCO eu tenho que vincular cada ip em /32. Então estou encontrando uma solução melhor.

Sobre a discussão

Algumas discussões foram excluídas. E não consigo encontrar a história disso.

Isenção de responsabilidade:

  • Digitei "Por exemplo:" em "O que eu quero"
  • Se você verificar o histórico de edição deste problema, verá que "Por exemplo:" está aqui pela primeira vez.
  • Esse problema surge com o recurso solicitado pelos clientes.
  • Quero resolver de forma simples, não quero mais falar sobre isso.
  • Não sei por que estou sendo demitido só porque tenho que satisfazer os clientes que hospedam o serviço em VPS somente IPV6.
  • O problema que tenho é que não sei se devo configurar algo no hardware ou software para resolver isso, mas acho que é um problema de servidor, que está fora do assunto. E eu encontro a solução.

Responder1

Você precisa de uma verificação da realidade e - tosse - um pouco de RTFM.

  • O bloco de endereço FE80 é link local. É um último recurso. Cada endpoint em um segmento Ethernet possui um endereço se tiver IPv6 ativo. Obrigado.
  • O que significa primeiro que você não pode usar TODOS os endereços porque os computadores possuem endereços neles aleatoriamente. Isso é aleatório - com base no MAC deles.
  • Como esse prefixo é local do link e atribuído automaticamente em cada link - ele também NÃO É ROTEADO. Portanto, a menos que seus usuários sejam locais - ELES NÃO PODEM ENVIAR PARA ISSO.
  • Finalmente, você comete uma grande estupidez arquitetônica. Você finaliza os usuários em um endereço IPv4 - o que é legal, os usuários têm acesso IPv4 - e então fornece a eles um IPv6 para alcançar - ASSUMINDO (e essa é uma ideia MUITO estúpida) que eles ainda têm IPv6 ativo. Provavelmente não é esse o caso. Obtenha o ipv4, cole no ipv4. Obtenha o Ipv6, adira ao IPv6. Mas irrelevante neste caso devido - não roteamento. Mas geralmente você NÃO deve trocar de protocolo - você assume pilha dupla, o que não é o caso de 99,9% das pessoas.

Responder2

Você poderia considerar criar um cluster com corosync e pacemaker e usar dois nós e alguns serviços com um IP virtual do seu bloco. O ip seria virtual porque o serviço será utilizado pelo nó 1 e pelo nó 2 e, portanto, o nó1 e o nó2 deverão poder utilizá-lo.

informação relacionada