miércoles, 14 de noviembre de 2018

Network Manager

El Network Manager es el administrador de las conexiones de Ubuntu

Su fichero de configuracion se encuentra en la ruta /etc/NetworkManager/NetworkManager.conf

----
[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

----

Cada dispositivo que el Network Manager administra es configurado mediante una conexión cuyo archivo es guarda en /etc/NetworkManager/system-connections/[nombre de la conexion]

/etc/NetworkManager/system-connections/LAN en PC Cliente para la iface enp0s3
----
[connection]
id=LAN
uuid=150ada1a-6db9-3c62-b7cd-e934bc979568
type=ethernet
autoconnect-priority=-999
interface-name=enp0s3
permissions=
timestamp=1538758218

[ethernet]
mac-address=08:00:27:00:03:01
mac-address-blacklist=

[ipv4]
address1=192.168.100.11/24,192.168.100.254
dns=192.168.100.11;192.168.100.254;8.8.8.8;8.8.4.4;
dns-search=aulaser.com
method=manual

----

Configurado de manera manual con
IP 192.168.100.11
mascara /24
puerta de enlace 192.168.100.254
servidores DNS locales y de google
y dominio de busqueda el dominio local de la entidad: aulaser.com

En el caso de que se hubieran definido rutas apareceria en la seccion [ipv4] la variable routeX=bloque_IPs,via,metrica

Ejemplo: route1=10.0.116.0/24,192.168.100.116,100

Para una interfaz configurada de manera automatica por DHCP
method=auto

Y si solo queremos que nos propociones IP mascara y gateway pero no servidores DNS ademas:
ignore-auto-dns=true

Dispone de una interfaz de linea de comandos NMCLI





El comando ip

Nuevo comando para obtener informacion de nuestras interfaces.

Para ver nuestras intefaces de red y su MAC

>ip link

>ip link show enp0s3


Para ver las direcciones de red configuradas en las interfaces (links)

>ip address

>ip address show dev enp0s3
>ip address show scope link


Para ver las rutas

>ip route
>ip route list dev enp0s3



Junto con el comando tracepath

>tracepath servidor.aulaser.com
>tracepath 192.168.112.13



martes, 13 de noviembre de 2018

De ifconfig a ip en ubuntu 18

Fuentes:

https://askubuntu.com/questions/1038037/ifconfig-in-ubuntu-18-04-is-not-working

https://blog.ubuntu.com/2017/07/07/if-youre-still-using-ifconfig-youre-living-in-the-past

Configuracion mediante ficheros de las intefaces de red

Archivo /etc/network/interfaces

iface eth1 inet static
address 192.168.1.41

netmask 255.255.255.0

network 192.168.1.0

broadcast 192.168.1.255
gateway 192.168.1.1

dns-nameserver 8.8.8.8
dns-search [dominio local]



Archivo /etc/resolv.conf (no se edita, se escribe por el programa resolvconf)

search [dominio local]
nameserver [IP servidor DNS]


Aplicar la configuración reiniciando la red:

/etc/init.d/networking restart


En version 18

editar el fichero /etc/netplan/01-network-manager-all.yaml

-----------
network:
  version: 2   
  renderer: networkd
  ethernets:
    enp0s3:
       dhcp4: no
       dhcp6: no
       addresses: [192.168.100.123/24]
       gateway4: 192.168.100.254
       nameservers:
         addresses: [192.168.100.254,8.8.8.8] 

-------------

Ejecutar

>sudo netplan apply

y comprobar

>systemctl status systemd-networkd
>ip address show dev enp0s3

Para comprobar servidores DNS
>systemd-resolve --status  

Se guardan en el archivo /run/systemd/resolve/resolv.conf

Aunque en /etc/resolv.conf indica 127.0.0.53 que luego hace forward a estos primeros



Fuentes:
https://www.solusan.com/etcnetworkinterfaces-de-un-plumazo.html

https://www.todavianose.com/configurar-interface-de-red-en-versiones-de-ubuntu-17-10-o-superiores/

https://askubuntu.com/questions/1031709/ubuntu-18-04-switch-back-to-etc-network-interfaces

https://www.administradortotal.net/sistemas/linux/configurar-la-red-ubuntu-18-04-derivados/

https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server/

https://aprendiendoavirtualizar.com/configurar-ip-estatica-en-ubuntu-server-18-04/

https://websiteforstudents.com/configure-static-ip-addresses-on-ubuntu-18-04-beta/

https://www.techrepublic.com/article/how-to-set-dns-nameservers-in-ubuntu-server-18-04/


Network Manager Comand Line Interface - nmcli

Terminos:

Dispositivo: Interfaz de red (link o device)

Conexión: Conjunto de opciones de configuración establecidas (connection)


Ver informacion general de las intefaces de red
>nmcli

>nmcli device show [nombre de interfaz]

>nmcli device show enp0s3



Averiguar las conexiones disponibles

>nmcli connection show


Obtener detalles de una conexión especifica

>nmcli connection show [nombre_conexión]


Obtener información del estado de los dispositivos (si están administrador o no por networkmanager)

>nmcli device status


Añadir una conexión

1.  Automatica por DHCP

nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo]

2. Estatica

nmcli connection add con-name "[nombre-conexión]" type [ethernet | loopback] ifname [nombre_dispositivo] autoconect no ip4 x.y.z.w gw4 x.y.z.w


Modificar una conexión

1. Indicar un DNS
nmcli connection modify "[nombre_conexion] ipv4.dns 8.8.8.8


1. Añadir un DNS (ademas del que había)
nmcli connection modify "[nombre_conexion] +ipv4.dns 8.8.4.4

3. Añadir otra dirección IP
-ip4.addresses x.y.z.w



Aplicar los cambios en una configuración de una conexión

nmcli connection update [nombre_conexion]


Ejemplos:

1. Modificar el hostname de una conexión enp0s3 (nombre de con y de dispositivo)

nmcli con modify enp0s3 ipv4.dhcp-hostname 'hostname'


ffvfvf

Fuentes:

https://www.unixmen.com/basics-networkmanager-command-line-tool-nmcli/

https://bbs.archlinux.org/viewtopic.php?id=195388


Evitar que NM controle una interfaz de red

El NetworkManager es un servicio que se encarga de administrar las conexiones de red del equipo. Pero solamente se encargá de aquellas que le dejemos que administre.

Cuando una conexión de red está administrada por NetworkManager su configuración no se obtiene de los ficheros de configuración estándares del sistema. Para configurar la tarjeta de red tendremos que hacerlo mediante el applet del NetworkManager, o es su defecto mediante la CLI con el comando nmcli


Existen varias maneras para indicar al NetworkManager que no queremos que una conexión sea administrada por este.

Una de ellas consiste en definir la configuración de la interfaz en el fichero de configuración de las interfaces de red /etc/network/interfaces



Fuentes:

https://websetnet.net/disable-network-manager-linux/

http://support.qacafe.com/knowledge-base/how-do-i-prevent-network-manager-from-controlling-an-interface/

https://askubuntu.com/questions/266767/how-to-stop-networkmanager

https://people.freedesktop.org/~lkundrak/nm-docs/nmcli-examples.html

https://enavas.blogspot.com/2016/07/evitar-que-network-manager-controle.html

Cliente de DHCP

El cliente de DHCP se invoca mediante la orden dhclient.

El comportamiento del cliente de DHCP se puede configurar mediante el fichero de configuración /etc/dhcp/dhclient.conf.

Si comentamos con un # la linea

#send host-name = gethostname();

El cliente no enviará su hostname y será la configuración del servidor DHCP la que tendrá que proporcionarlo.


>sudo dhclient -v
>sudo dhclient -r

No obstante, NetworkManager creará un archivo en /var/lib/NetworkManager con nombre dhclient-enp0sN.conf con una mezcla de sus opciones más las de el fichero estandar.



El archivo /var/lib/dhcp/dhclient.leases contiene la informacion de las últimas concesiones realizadas por el servidor para que el que cuando el cliente se inicia pida renovarlas al servidor.

El network manager no usa este achivo de configuracion directamente, usa sin embargo este otro:

/var/lib/NetworkManager/dhclient-[conection.uuid]-enp0sN.lease


Mediante este comando podremos hacer que se envie el hostname o no si estamos usando Networkmanager

>nmcli con modify "LAN" ipv4.dhcp-send-hostname FALSE

y con este ver los resultados


Si no queremos que el nm administre nuestra interfaz debemos editar el archivo de configuración de las interfaces de red  /etc/network/interfaces.

Si lo que queremos es que la configuración de red sea automática por dhcp entonces el archivo debe contener la siguiente línea:

iface enp0s3 inet dhcp


Además debemos reiniciar el servicio network-manager mediante el comando

/etc/init.d/network-manager restart


Fuentes:
https://askubuntu.com/questions/151958/how-to-make-dhclient-forget-its-last-dhcp-lease

https://wiki.gnome.org/Projects/NetworkManager

https://bbs.archlinux.org/viewtopic.php?id=195388







Configurar Webmin para la version 4.4.3 del servidor DHCP de ISC

El boton de start del módulo de configuración para DHCP de Webmin parece no funcionar, pero en realidad el problema está en que  en el módulo no está bien configurada la ruta al fichero PID del proceso dhcpd

Por lo tanto, hay que cambiarlo por

/run/dhcp-server/dhcpd.pid



Podemos averiguar el estado actual en el que se encuentra el servicio DHCP mediante el comando

/etc/inid.d/isc-dhcp-server status

y comprobar si el servicio se encuentra en ejecución o por el contrario, se encuentra detenido.