Endereço IP estático com o NetworkManager?

7

Eu só queria configurar um endereço IP estático para uma máquina fedora 19 em minha LAN. Estou acostumado a /etc/network/interfaces do debian, mas esse arquivo não existe aqui.
Depois de pesquisar um pouco, encontrei um pequeno tutorial que diz para desabilitar o NetworkManager via systemctl e habilitar a rede. Depois disso, pode-se configurar o endereço IP estático em um arquivo chamado /etc/sysconfig/network-scripts/ifcfg-*interfacename* .

Aqui está meu primeiro problema: Eu encontrei um arquivo com o endereço MAC da minha interface como mostrado por ifconfig , mas o nome após ifcfg- não corresponde ao nome do ifconfig. Por que isso é assim?

Meu segundo problema é sobre o uso de NetworkManager.service ou network.service. Eu li em um fórum, que network.service ainda está incluído por razões de compatibilidade e pode ser excluído em breve. Se network.service for substituído em breve por NetworkManager.service, não devo escolher NetworkManager.service para configurar minhas interfaces de rede? Se sim, como faço isso com o NetworkManager de um shell?

Editar:
Aqui estão as saídas solicitadas:

[root@bitch /]# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 97  bytes 12042 (11.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 97  bytes 12042 (11.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

p3p1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.178.11  netmask 255.255.255.0  broadcast 192.168.178.255
        inet6 fe80::214:85ff:febc:1c63  prefixlen 64  scopeid 0x20<link>
        ether 00:14:85:bc:1c:63  txqueuelen 1000  (Ethernet)
        RX packets 134347  bytes 169988336 (162.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 78199  bytes 6595669 (6.2 MiB)
        TX errors 0  dropped 0 overruns 1  carrier 0  collisions 0

[root@bitch /]# ls -l /etc/sysconfig/network-scripts/
total 200
-rw-r--r--. 1 root root   437 Sep 15 02:05 ifcfg-enp2s5
-rw-r--r--. 1 root root   254 May 31 09:49 ifcfg-lo
lrwxrwxrwx. 1 root root    24 Jun 27 19:12 ifdown -> ../../../usr/sbin/ifdown
-rwxr-xr-x. 1 root root   627 May 31 09:49 ifdown-bnep
-rwxr-xr-x. 1 root root  5553 May 31 09:49 ifdown-eth
-rwxr-xr-x. 1 root root   781 May 31 09:49 ifdown-ippp
-rwxr-xr-x. 1 root root  4141 May 31 09:49 ifdown-ipv6
lrwxrwxrwx. 1 root root    11 Jun 27 19:12 ifdown-isdn -> ifdown-ippp
-rwxr-xr-x. 1 root root  1642 May 31 09:49 ifdown-post
-rwxr-xr-x. 1 root root  1068 May 31 09:49 ifdown-ppp
-rwxr-xr-x. 1 root root   837 May 31 09:49 ifdown-routes
-rwxr-xr-x. 1 root root  1444 May 31 09:49 ifdown-sit
-rwxr-xr-x. 1 root root  1462 May 31 09:49 ifdown-tunnel
lrwxrwxrwx. 1 root root    22 Jun 27 19:12 ifup -> ../../../usr/sbin/ifup
-rwxr-xr-x. 1 root root 12445 May 31 09:49 ifup-aliases
-rwxr-xr-x. 1 root root   859 May 31 09:49 ifup-bnep
-rwxr-xr-x. 1 root root 10234 May 31 09:49 ifup-eth
-rwxr-xr-x. 1 root root 12033 May 31 09:49 ifup-ippp
-rwxr-xr-x. 1 root root 10437 May 31 09:49 ifup-ipv6
-rwxr-xr-x. 1 root root   804 May 31 09:49 ifup-ipx
lrwxrwxrwx. 1 root root     9 Jun 27 19:12 ifup-isdn -> ifup-ippp
-rwxr-xr-x. 1 root root   642 May 31 09:49 ifup-plip
-rwxr-xr-x. 1 root root  1043 May 31 09:49 ifup-plusb
-rwxr-xr-x. 1 root root  2609 May 31 09:49 ifup-post
-rwxr-xr-x. 1 root root  4154 May 31 09:49 ifup-ppp
-rwxr-xr-x. 1 root root  1925 May 31 09:49 ifup-routes
-rwxr-xr-x. 1 root root  3268 May 31 09:49 ifup-sit
-rwxr-xr-x. 1 root root  2607 May 31 09:49 ifup-tunnel
-rwxr-xr-x. 1 root root  3775 May 31 09:49 ifup-wireless
-rwxr-xr-x. 1 root root  4623 May 31 09:49 init.ipv6-global
-rw-r--r--. 1 root root 13836 May 31 09:49 network-functions
-rw-r--r--. 1 root root 26134 May 31 09:49 network-functions-ipv6

Conteúdo de / etc / sysconfig / network-scripts / ifcfg-enp2s5:

PEERROUTES="yes"
IPV6INIT="yes"
NAME="enp2s5"
IPV6_PEERDNS="yes"
DEFROUTE="yes"
UUID="7622e20e-3f2a-4b5c-83d8-f4f6e22ed7ec"
PEERDNS="yes"
IPV4_FAILURE_FATAL="no"
HWADDR="00:14:85:BC:1C:63"
BOOTPROTO="static"
IPV6_DEFROUTE="yes"
IPV6_AUTOCONF="yes"
IPV6_FAILURE_FATAL="no"
TYPE="Ethernet"
ONBOOT="yes"
IPV6_PEERROUTES="yes"
IPADDR=192.168.178.11
NETMASK=255.255.255.0
BROADCAST=192.168.178.255
NETWORK=192.168.178.0
GATEWAY=192.168.178.1

Grepping dmesg para o udevd:

[root@bitch network-scripts]# dmesg | grep udevd
[    0.788381] systemd-udevd[97]: starting version 204
[    2.457296] systemd-udevd[322]: starting version 204
[    3.110272] systemd-udevd[329]: renamed network interface eth0 to p3p1
    
por wullxz 15.09.2013 / 02:03

2 respostas

5

Instruções de linha de comando

Após muita escavação, descobri que os nomes dos arquivos ifcfg - * e a variável NAME= no arquivo têm muito pouco a ver com a atribuição real. Você pode literalmente alterá-los para o que quiser ... Eu fiz um teste na minha máquina alterando-os para eth0 e o IP manual / estático ainda foi aplicado na inicialização. A chave aqui parece ser a variável HWADDR dentro do arquivo. O valor NAME= parece ser apenas o nome exibido nas configurações gráficas do Network Manager. Então, dito isso, acredito que tudo que você precisa fazer é ...

  1. Verifique se NetworkManager.service ainda está ativado e network.service está desativado.

  2. A etapa mais IMPORTANTE é excluir o script ifcfg-enp2s5 atual.

    sudo rm /etc/sysconfig/network-scripts/ifcfg-enp2s5
    
  3. Crie um novo script chamado ifcfg-p3p1

    sudo nano /etc/sysconfig/network-scripts/ifcfg-p3p1
    
  4. Defina o conteúdo de ifcfg-p3p1 para o seguinte e atualize as respectivas configurações de IP com as configurações desejadas.

    TYPE=Ethernet
    BOOTPROTO=none
    DEFROUTE=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_FAILURE_FATAL=no
    NAME=p3p1
    UUID=7622e20e-3f2a-4b5c-83d8-f4f6e22ed7ec
    ONBOOT=yes
    DNS1=10.0.0.1
    IPADDR0=10.0.0.2
    PREFIX0=24
    GATEWAY0=10.0.0.1
    HWADDR=00:14:85:BC:1C:63
    IPV6_PEERDNS=yes
    IPV6_PEERROUTES=yes
    

Por que o nome ifcfg - * era diferente do nome real do dispositivo. Eu não sei, mas suspeito que tenha algo a ver com a forma como as configurações de rede foram aplicadas durante a instalação.

Instruções Gráficas

  1. Abrir Configurações do sistema
  2. Clique em Rede
  3. Clique em Opções ...
  4. Clique na guia Configurações IPv4 * ou Configurações IPv6 dependendo da versão do IP que sua rede doméstica está usando (provavelmente IPv4 ).
  5. Clique na caixa de combinação Método e selecione a opção Manual .
  6. Clique no botão Adicionar .
  7. Digite o endereço desejado nas colunas Endereço (por exemplo, 10.0.0.20).
  8. Digite a máscara de rede da sua rede na coluna Máscara de rede (por exemplo, 255.255.255.0).
  9. Insira o gateway (normalmente o IP do seu roteador) na coluna Gateway (por exemplo, 10.0.0.1)
  10. Digite seu servidor DNS na caixa de texto servidores DNS (por exemplo, 10.0.0.1)

  11. CliqueemSalvar...
  12. QuandovocêretornaràsconfiguraçõesdeRede,ativeaWiredinterfaceOFF.
  13. Eledeveserativadoautomaticamentecomasinformaçõesdeendereçoestáticasinseridasnasetapasanteriores.Seelenãoligar,cliquenobotãodeativação/desativaçãoparaativá-lo.

Para responder à sua pergunta sobre como usar o NetworkManager.service over network.service . Definitivamente, existe potencial para ser removido em versões posteriores. Como regra geral, não importa o assunto, você deve sempre tentar evitar usar qualquer coisa "incluída para compatibilidade com versões anteriores" . Então, você deve usar NetworkManager se puder .

    
por 15.09.2013 / 03:08
1

Eu não uso o Fedora, mas de acordo com este post , o arquivo que você está procurando deve ser /etc/sysconfig/network-scripts/ifcfg-p3p1 , que deve ser parecido com isto:

DEVICE=eth0
BOOTPROTO=none
HWADDR=00:13:20:5E:C0:47
ONBOOT=yes
DHCP_HOSTNAME=balthasar.benhome.com
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=no
IPADDR=172.16.3.3
NETMASK=255.255.255.192
GATEWAY=172.16.3.1

A configuração do IP deve funcionar.

    
por 15.09.2013 / 07:36