interfaces de rede renomear não funcionando conforme o esperado. Onde olhar?

2

O sistema é o Ubuntu 16.10. Ele foi atualizado algumas vezes, então pode ter algumas coisas remanescentes de versões anteriores (pelo menos até 14.04, provavelmente muito mais).

A questão é a seguinte: Eu tenho duas interfaces de rede no sistema (na placa principal). Um sempre foi chamado eth0. O segundo não estava em uso. Agora eu tenho uma nova situação na minha rede e quero usar a segunda interface.

Aprendi muito sobre a renomeação da interface e as novas regras de renomeação. Assim, a segunda interface escolhe o nome enp5s0 ou similar, não me lembro, portanto, preciso renomeá-lo. Mas aqui é onde meu problema começa.

A eth0 foi tratada em /etc/udev/rules.d/70-persistent-net.rules , o que, aprendi, está obsoleto. Eu tentei adicionar uma segunda regra para "eth1" lá (usando seu mac em vez da eth0), mas não deu certo.

Então, depois de ler um pouco eu me livrei do arquivo antigo e talvez eu tenha entendido mal alguma coisa, mas achei que os nomes eth * estão desestimulados hoje, então eu escolhi chamá-los lan0 e lan1 (que descreve o que eles serão usados para). Então adicionei novos arquivos em /etc/systemd/network :

10-eth-lan0.link
10-eth-lan1.link

Com este conteúdo:

[Match]
MACAddress=00:23:54:96:74:07/06

[Link]
Name=lan0/1

para os diferentes MACAddresses e os diferentes nomes. Para eth0 isso parece funcionar, para eth1 (ou qualquer outra razão) isso não acontece. E eu estou bastante confuso porque diabos isso não vai funcionar. Eu tripple conferi o mac.

dmesg | grep eth me mostra isso:

[    6.233684] sky2 0000:08:00.0 eth0: addr 00:23:54:96:74:07
[    6.233975] sky2 0000:05:00.0 eth1: addr 00:23:54:96:74:06
[    6.661954] sky2 0000:08:00.0 lan0: renamed from eth0
[    8.513836] sky2 0000:05:00.0 rename3: renamed from eth1

Eu não tenho absolutamente nenhum indício porque resolvi "rename3" agora ... Eu experimentei um pouco com o nome do conjunto do ip link depois que vi o arquivo de link do systemd não funcionando.

O que mais me intriga é que funcione para eth0 - > lan0 mas não para eth1 - > lan1. O que posso pesquisar para descobrir por que a renomeação não está funcionando? Quem está armazenando coisas aqui? O "ip link set name" teve alguns efeitos persistentes (como a mudança para "rename3" do enp5s0 ou similar).

[editar] Eu reconheci mais uma coisa agora: Minha interface de loopback é renomeada para lan1. Não sei porque. Mas isso acontece em todas as botas agora. Também me livrei dos arquivos * .link descritos acima e as renomeações ainda acontecem da mesma forma .... ??? Em / etc existe agora apenas uma menção de lan0 em / etc / network / interfaces e nenhuma menção de lan1. Alguém armazena essas coisas em algum lugar e eu não sei quem ou onde.

    
por Garfonso 26.02.2017 / 21:18

1 resposta

0

(Eu sei que este é um documento do RHEL, mas é realmente apenas sobre udev )

Compreendendo o procedimento de renomeação de dispositivos

  1. A rule in /usr/lib/udev/rules.d/60-net.rules instructs the udev helper utility, /lib/udev/rename_device, to look into all /etc/sysconfig/network-scripts/ifcfg-suffix files. If it finds an ifcfg file with a HWADDR entry matching the MAC address of an interface it renames the interface to the name given in the ifcfg file by the DEVICE directive.

Então, se você quiser o método mais simples para renomear seu dispositivo, crie um arquivo /etc/sysconfig/network-scripts/ifcfg-${INTERFACE_NAME} com pelo menos o seguinte:

DEVICE=${INTERFACE_NAME}
HWADDR=${MAC_ADDRESS}

Se a sua interface tiver um MAC de 00:11:22:33:44:55 e você quiser que ele seja chamado de penguin-interface

/etc/sysconfig/network-scripts/ifcfg-penguin-interface

DEVICE=penguin-interface
HWADDR=00:11:22:33:44:55

Você também pode usar todas as configurações habituais.

Caso você esteja se perguntando como os nomes como enp5s0 acontecem ( e ther n et p ort 5 s lote 0 ) link

    
por 27.04.2017 / 19:08