falha gethostbyname e tempos limite de rede na cadeia

2

Eu tenho um droplet FreeBSD DigitalOcean no qual eu segui este guia exatamente para configurar uma cadeia. O problema é que não consigo obter conectividade de rede confiável dentro da cadeia. Fazendo curl https://www.google.com/ recebo um atraso de ~ 1 minuto ao tentar se conectar ao servidor:

Após o segundo asterisco, a conexão foi estabelecida muito rapidamente. Com ping recebo 100% de perda de pacotes e, ocasionalmente, não consigo resolver nomes de host. Não funcionará durante um comando, mas depois de um pequeno atraso antes de eu tentar o próximo.

Eu tentei ssh -T [email protected] para ver se o SSH funciona de forma confiável e pareço ser capaz de sempre obter uma conexão (quando a pesquisa de nome de host funciona).

Eu só tenho esses problemas na cadeia, não no host.

    
por Lander 19.01.2016 / 18:50

2 respostas

0

A questão está em algum lugar na rede da DigitalOcean. Alguns outros no Twitter relataram o mesmo problema e migrar para a AWS com a mesma configuração exata funciona 100%.

    
por 29.02.2016 / 22:10
0

Bem, você não pode ping de uma cadeia a menos que você permita especificamente. Isto é assim por padrão porque aciona problemas de segurança. Você pode permitir uma prisão para ping , mas você só deve fazer isso se realmente não tiver outra solução. Mais sobre isso there .

Agora, em vez de usar ping , você pode usar host para verificar se a conexão de rede está correta:

# host google.com

Quanto à questão curl : no pf.conf, você deve habilitar tcp e udp para dentro e para fora para a porta http (e talvez https também, se você precisar), mas também habilitar udp para port dns. Algo como:

pass in on $ext_if proto { tcp, udp } from any to $ext_if port $webports
pass out on $ext_if proto { tcp, udp } from $ext_if to any port $webports 

pass out on $ext_if proto udp from $ext_if to any port $dns_port

Onde você deve ter definido webports e dns_port para atender às suas necessidades.

Além disso, quando você seguiu o guia, você fez uma cópia do /etc/resolv.conf dos seus hosts. Talvez verifique o que há nele, dependendo da configuração de seus hosts, em alguns casos, pode não funcionar em prisões.

PS: a partir da falha gethostbyname, está escrita no seu título, mas não mencionada na sua postagem. Isso pode estar relacionado à configuração do / etc / hosts, mas não pode dizer mais.

    
por 29.02.2016 / 08:33

Tags