Qual é a melhor maneira de ter um endereço 169.254.169.254 local no meu laptop?

Qual é a melhor maneira de ter um endereço 169.254.169.254 local no meu laptop?

Quero emular o serviço de metadados do Amazon EC2 em meu sistema local para teste. No EC2, isso é executado em 169.254.169.254. Eu entendo que este é odesignadaintervalo para endereços locais pseudoaleatórios em caso de falha de DHCP, mas a Amazon, em sua sabedoria, também o está usando para essa finalidade, então preciso fazer a mesma coisa.

Estou usando F19 Alpha. No Fedora anterior, eu poderia simplesmente criar uma interface virtual no dispositivo de loopback, gostar lo:0e atribuir a ela um endereço estático usando os ifcfg-scripts normais. Agora, isso falha com "Erro: Falha na ativação da conexão: dispositivo não gerenciado pelo NetworkManager ou indisponível".

(Estou executando o NetworkManager, mas anteriormente estava fazendo isso embaixo dele.)

Encontrar alguma maneira de continuar o que estava fazendo com lo:0a abordagem correta (e em caso afirmativo, como?), Ou existe uma maneira melhor?

Responder1

Para responder à sua pergunta específica, você pode usariproute2para atribuir o endereço IP assim:

sudo ip addr add 169.254.169.254/16 dev lo

Ele apenas adicionará um novo IP à interface, sem necessidade de alias com :0, :1, etc. Observe que isso será perdido após uma reinicialização.

E para emular rapidamente o serviço de metadados você pode usarnetcatassim:

while true; do sudo nc -l 169.254.169.254 80 <<< '"region" : "eu-west-1"'; test $? != 0 && break; done

Isso lhe dará a região ao perguntar assim:

curl -s http://169.254.169.254/latest/dynamic/instance-identity/document

OBSERVAÇÃO:De acordo coma versão atual desta página de documentação da AWSo IP do serviço de metadados é um endereço local de link e aponta para oArtigo da Wikipédia sobre isso. Por sua vez, essa página aponta paraRFC3927onde se lê:

O prefixo IPv4 169.254/16 está registrado na IANA para esse fim.

Responder2

Faz algum tempo que não uso o Fedora, mas ainda deve ser muito semelhante ao CentOS. Eu fiz isso no CentOS 6.

Copiar /etc/sysconfig/network-scripts/ifcfg-lopara/etc/sysconfig/network-scripts/ifcfg-lo:1

Sua nova configuração deve ficar assim:

DEVICE=lo:1
IPADDR=169.254.169.254
NETMASK=255.0.0.0
ONBOOT=yes
NAME=loopback1

Reinicie o serviço de rede service network restart.

Boa chance, meu amigo!

informação relacionada