Esta seção somente se aplica se uma placa de rede de comunicação for para ser configurada.
Iniciando com a versão 209, o systemd embarca um processo de
segundo plano de configuração da rede de comunicação chamado
systemd-networkd o
qual pode ser usado para configuração básica da rede de
comunicação. Adicionalmente, desde a versão 213, resolução de nome
DNS pode ser lidada por systemd-resolved no lugar de um
arquivo estático /etc/resolv.conf
.
Ambos os serviços são habilitados por padrão.
Se você não usará o systemd-networkd para configuração da rede de comunicação (por exemplo, quando o sistema não estiver conectado à rede de comunicação ou você desejar usar outro utilitário, como o NetworkManager para configuração da rede de comunicação), [então] desabilite um serviço para evitar uma mensagem de erro durante a inicialização:
systemctl disable systemd-networkd-wait-online
Arquivos de configuração para "systemd-networkd" (e
"systemd-resolved")
podem ser colocados em "/usr/lib/systemd/network
" ou "/etc/systemd/network
". Arquivos em "/etc/systemd/network
" tem uma prioridade mais
alta que aqueles em "/usr/lib/systemd/network
". Existem três tipos de
arquivos de configuração: arquivos ".link
", ".netdev
" e
".network
". Para descrições
detalhadas e conteúdo de exemplo desses arquivos de configuração,
consultem-se as páginas de manual "systemd-link(5)",
"systemd-netdev(5)"
e "systemd-network(5)".
O Udev normalmente atribui nomes de interface da placa de rede de comunicação baseados em características físicas do sistema, tais como enp2s1. Se não tiver certeza acerca do que é o nome da sua interface, [então] você sempre pode executar ip link depois que tiver inicializado seu sistema.
Os nomes de interface dependem da implementação e configuração do processo de segundo plano Udev em execução no sistema. O processo de segundo plano Udev para o LFS (systemd-udevd, instalado na Seção 8.76, “Systemd-256.4”), não executará, a menos que o sistema LFS seja inicializado. Assim, não é confiável determinar os nomes de interface sendo usados no sistema LFS executando aqueles comandos na distribuição anfitriã, mesmo que você esteja no ambiente chroot.
Para a maioria dos sistemas, existe somente uma interface de rede de comunicação para cada tipo de conexão. Por exemplo, o nome clássico de interface para uma conexão com fios é eth0. Uma conexão sem fios usualmente terá o nome wifi0 ou wlan0.
Se você preferir usar os nomes clássicos ou personalizados da interface de rede de comunicação, [então] existem três caminhos alternativos para fazer isso:
Mascarar o arquivo .link
do
Udev para a política padrão:
ln -s /dev/null /etc/systemd/network/99-default.link
Criar um esquema manual de nomenclatura, por exemplo
nomeando as interfaces com alguma coisa como "internet0
", "dmz0
" ou "lan0
". Para fazer isso, crie arquivos
".link
" em
"/etc/systemd/network/" que selecionem um nome explícito ou
um esquema melhor de nomenclatura para as tuas interfaces
de rede de comunicação. Por exemplo:
cat > /etc/systemd/network/10-ether0.link << "EOF"
[Match]
# Muda o endereço MAC conforme apropriado para o seu dispositivo de rede de comunicação
MACAddress=12:34:45:78:90:AB
[Link]
Name=ether0
EOF
Veja-se "systemd.link(5)" para mais informações.
Em "/boot/grub/grub.cfg", passe a opção "net.ifnames=0
" na linha de comando do
núcleo.
O comando abaixo cria um arquivo básico de configuração para uma configuração de IP Estático (usando ambos systemd-networkd e systemd-resolved):
cat > /etc/systemd/network/10-eth-static.network << "EOF"
[Match]
Name=<nome-dispositivo-rede-de-comunicação>
[Network]
Address=192.168.0.2/24
Gateway=192.168.0.1
DNS=192.168.0.1
Domains=<Seu Nome de Domínio>
EOF
Múltiplas entradas de DNS podem ser adicionadas se você tiver
mais que um servidor de DNS. Não inclua entradas de DNS ou de
Domínios se você pretende usar um arquivo estático /etc/resolv.conf
.
Se o sistema será conectado à Internet, [então] ele precisará de
alguns meios de resolução de nome do Domain Name Service (DNS) para
resolver nomes de domínio da Internet para endereços de IP e vice
versa. Isso é melhor alcançado colocando-se o endereço de IP do
servidor de DNS, disponível a partir do ISP ou do(a)
administrador(a) da rede de comunicação, no /etc/resolv.conf
.
Se usar métodos incompatíveis com systemd-resolved para
configurar suas interfaces da rede de comunicação (exemplo:
ppp, etc.); ou se usar qualquer tipo de resolvedor local
(exemplo: bind, dnsmasq, unbound, etc.); ou qualquer outro
aplicativo que gere um /etc/resolv.conf
(exemplo: um aplicativo
resolvconf outro
diferente daquele fornecido pelo systemd), [então] o serviço
systemd-resolved
não deveria ser usado.
Para desabilitar systemd-resolved, emita o seguinte comando:
systemctl disable systemd-resolved
Quando usar o systemd-resolved para
configuração do DNS, ele cria o arquivo /run/systemd/resolve/stub-resolv.conf
. E, se
/etc/resolv.conf
não existir,
[então] ele será criado pelo systemd-resolved como um link
simbólico para /run/systemd/resolve/stub-resolv.conf
. Então, é
desnecessário criar um /etc/resolv.conf
manualmente.
Se um /etc/resolv.conf
estático for
desejado, [então] crie-o executando o seguinte comando:
cat > /etc/resolv.conf << "EOF"
# Início do /etc/resolv.conf
domain <Seu Nome de Domínio>
nameserver <Endereço de IP do seu servidor primário de nome>
nameserver <Endereço de IP do seu servidor secundário de nome>
# Fim do /etc/resolv.conf
EOF
A declaração domain
pode ser omitida
ou substituída por uma declaração search
. Veja-se a página de manual para
resolv.conf para mais detalhes.
Substitua <Endereço de IP do
servidor de nome>
pelo endereço de IP do servidor
DNS mais apropriado para a sua configuração. Frequentemente
existirá mais que uma entrada (exigências demandam servidores
secundários para capacidade de substituto). Se você precisa ou
quer somente um servidor DNS, [então] remova a segunda linha
servidor de nome do
arquivo. O endereço de IP também possivelmente seja um roteador
na rede local de comunicação. Outra opção é a de usar o serviço
de DNS Google Public usando os endereços de IP abaixo como
servidores de nome.
Os endereços DNS IPv4 do Google Public são 8.8.8.8
e 8.8.4.4
para IPv4; e 2001:4860:4860::8888
e 2001:4860:4860::8844
para IPv6.
Durante o processo de inicialização, o arquivo /etc/hostname
é usado para estabelecer o nome de
dispositivo do sistema.
Crie o arquivo /etc/hostname
e
informe um nome de dispositivo executando:
echo "<lfs>
" > /etc/hostname
<lfs>
precisa ser
substituído pelo nome dado para o computador. Não informe o Fully
Qualified Domain Name (FQDN) aqui. Essa informação é colocada no
arquivo /etc/hosts
.
Decida acerca de um "Fully-Qualified Domain Name" ("FQDN"), e
possíveis apelidos para uso no arquivo /etc/hosts
. Se usar endereços estáticos de IP,
[então] você também precisará decidir acerca de um endereço de IP.
A sintaxe para uma entrada de arquivo "hosts" é:
Endereços_IP meuhost.exemplo.org apelidos
A menos que o computador seja para estar visível para a Internet (por exemplo, existe um domínio registrado e um bloco válido de endereços atribuídos de IP—a maioria dos(as) usuários(as) não tem isso), assegure-se de que o endereço de IP está no intervalo de endereço privado de IP da rede de comunicação. Intervalos válidos são:
Intervalo de Endereço Privado de Rede Prefixo Normal
10.0.0.1 - 10.255.255.254 8
172.x.0.1 - 172.x.255.254 16
192.168.y.1 - 192.168.y.254 24
x pode ser qualquer número no intervalo 16-31. y pode ser qualquer número no intervalo 0-255.
Um endereço de IP privado válido poderia ser 192.168.1.1.
Se o computador for para estar visível para a Internet, [então] um "FQDN" válido pode ser o próprio nome de domínio ou uma sequência de caracteres resultante da concatenação de um prefixo (geralmente o nome do dispositivo) e o nome de domínio com um caractere “.”. E você precisa contactar o provedor de domínio para resolver o "FQDN" para seu endereço de IP público.
Mesmo se o computador não estiver visível para a Internet, um
"FQDN" ainda é necessário para determinados programas, tais como
"MTAs", funcionarem corretamente. Um "FQDN" especial, localhost.localdomain
, pode ser usado para essa
finalidade.
Crie o arquivo /etc/hosts
usando o
seguinte comando:
cat > /etc/hosts << "EOF"
# Começo /etc/hosts
<192.168.0.2>
<FQDN>
[apelido1] [apelido2] ...
::1 ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# Fim /etc/hosts
EOF
Os valores <192.168.0.2>
e <FQDN>
precisam ser mudados
para usuários(as) ou exigências específicos(as) (se atribuído um
endereço de IP por um(a) administrador(a) de rede de
comunicação/sistema e a máquina estará conectada a uma rede
existente de comunicação). O(s) nome(s) de apelido(s) opcional(is)
pode(m) ser omitido(s) e a linha <192.168.0.2>
pode ser
omitida se você estiver usando uma conexão configurada com "DHCP"
ou autoconfiguração de "IPv6" ou usando localhost.localdomain
como o "FQDN".
O "/etc/hostname
" não contém entradas
para "localhost
", "localhost.localdomain
" ou o nome do dispositivo
(sem um domínio) porque eles são manuseados pelo módulo "NSS"
"myhostname
"; leia-se a página de
manual "nss-myhostname(8)"
para detalhes.
A entrada ::1 é o homônimo "IPv6" do 127.0.0.1 e representa a interface de "loopback" "IPv6".