AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1816036
Accepted
PatS
PatS
Asked: 2023-11-10 05:41:41 +0800 CST2023-11-10 05:41:41 +0800 CST 2023-11-10 05:41:41 +0800 CST

No Ubuntu Linux, como posso garantir que a métrica de um gateway padrão seja menor do que qualquer outro gateway?

  • 772

Estou tendo um problema com uma VM dual-nic (digamos eth0 e eth1). Por exemplo, as coisas funcionam quando a tabela de roteamento se parece com isto:

$ sudo route -n
default         10.100.0.1        0.0.0.0         UG    20100      0        0 eth0
default         192.168.100.1     0.0.0.0         UG    20101      0        0 eth1

O GW padrão 10.100.0.1lida com todo o tráfego, incluindo pesquisas de DNS, etc.

No fim de semana algo acontece (não tenho certeza do que), mas quando chego na segunda-feira, vejo que meu GW padrão desejado agora tem uma métrica MAIS ALTA, por isso não é usado.

$ sudo route -n
default         192.168.100.1     0.0.0.0         UG    20101      0        0 eth1
default         10.100.0.1        0.0.0.0         UG    20102      0        0 eth0  <<< ISSUE 20102

O segmento LAN 192.168.100.1 só tem conectividade com hosts usados ​​para testes. O gateway padrão é criado automaticamente quando eu habilito o NETWORK SEGMENT (estou executando esta VM no vSphere).

O resultado é que meus servidores DNS não estão acessíveis. A solução alternativa é reinicializar o host ou descartar e adicionar novamente o gateway padrão.

Esta pergunta explica o problema: Por que excluir uma rota de gateway e adicioná-la novamente faz com que o roteamento funcione repentinamente?

Estou tentando encontrar uma solução para esse problema. A solução deve garantir que o GW padrão desejado sempre terá a métrica mais baixa dos dois gateways definidos.

Procurando soluções

Não encontrei o termo de pesquisa correto para o problema que estou tendo, então tenho lido sobre como funcionam os gateways Linux, o que não tem sido útil para responder à minha pergunta.

  • Pesquisa Google como configurar corretamente dois gateways para um host Linux dual-nic
  • https://serverfault.com/questions/1117143/how-to-configure-2-x-nic-with-each-having-their-own-gateway
  • https://www.wikihow.com/Add-or-Change-the-Default-Gateway-in-Linux
linux
  • 2 2 respostas
  • 48 Views

2 respostas

  • Voted
  1. Best Answer
    Luke Attard
    2023-11-10T12:17:05+08:002023-11-10T12:17:05+08:00

    Em primeiro lugar, eu usaria ip route, não apenas route. O pacote iproute2 substituirá o net-tools em breve.

    Embora existam soluções melhores que eu poderia sugerir, se eu tivesse mais detalhes sobre sua configuração, por exemplo: você está usando netplan ou suas interfaces estão configuradas com a configuração de interface mais antiga.

    Esta solução deve funcionar com qualquer versão do Ubuntu.

    crie um arquivo em /etc/network/if-up.d/ e torne-o executável pelo root

    #!/bin/sh
    # filename: eth1.sh
    
    if [ "$IFACE" = eth1 ]; then
      ip route del default dev eth1
    fi
    

    Com base nas informações extras, sugiro que a melhor solução seja:

    criando um arquivo /etc/systemd/network/99-eth1.network

    [Match]
    Name=eth1
    
    [Network]
    Address=192.168.100.100/24 *change to be the ip address you need*
    DHCP=no
    DefaultRouteOnDevice=false
    

    Isso garantirá que o vSphere não aloque o gateway via DHCP. Suspeito que algo mudou em seu vSphere, atualização ou alteração de configuração que resultou na alocação de um gateway via DHCP para sua VM. Ou, por algum motivo, a ordem em que suas placas de rede foram configuradas durante a inicialização foi alterada. Se a eth1 for configurada primeiro, a métrica da rota adicionaria o custo de alcançar o endereço do gateway pela eth1 à eth0, daí a métrica mais alta.

    Se você deseja garantir 110% de garantia de que a eth0 seja configurada primeiro e tenha uma métrica mais baixa, você também pode criar o arquivo abaixo se a eth0 receber seu endereço via dhcp, se for atribuído estaticamente, altere o DHCP para não abaixo e adicione a seção de endereço, e digite o endereço do gateway

    /etc/systemd/network/80-eth0.network
    
    [Match]
    Name=eth0
        
    [Network]
    DHCP=ipv4
    
    [Route]
    Gateway=_dhcp4
    Metric=5
    
    • 1
  2. PatS
    2023-11-14T05:07:48+08:002023-11-14T05:07:48+08:00

    Um colega de trabalho forneceu outra solução que era usar a nmcliinterface de linha de comando baseada na resposta em Pergunte ao Ubuntu aqui Defina a métrica da interface de rede para um valor fixo

    A solução define a métrica na interface desejada eth0 na questão para um valor baixo.

    NOTA: Não tenho certeza de como/por que a métrica inferior é mantida quando a interface eth0 é devolvida, mas funcionou durante o teste.

    nmcli c eth0
    set ipv4.route-metric 5
    save
    quit
    systemctl restart NetworkManager
    

    Tanto esta resposta quanto a resposta selecionada funcionaram para o OP.

    • 0

relate perguntas

  • Como eu faria minha máquina Linux parecer que está executando o Windows?

  • Existe um equivalente a cd - para cp ou mv?

  • execute o contêiner do docker como root

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    Vickel O Firefox não permite mais colar no WhatsApp web? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke Por que os arquivos tar.xz são 15x menores ao usar a biblioteca tar do Python em comparação com o tar do macOS? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve