Difference between revisions of "Configuring Network (Español)"

From ArchWiki
Jump to: navigation, search
m (moved Configurando la Red (Español) to Configuring Network (Español): International naming standardization: Title in English (Lingua): User:Pointone/i18n)
(14 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:Redes (Español)]]
+
[[Category:Networking (Español)]]
[[Category:Obteniendo e instalando Arch (Español)]]
+
[[Category:Getting and installing Arch (Español)]]
[[Category:CÓMOs (Español)]]
+
[[cs:Configuring Network]]
 +
[[en:Configuring Network]]
 +
[[fr:Connexions reseau]]
 +
[[it:Configuring Network]]
 +
[[nl:Configuring Network]]
 +
[[pt:Configuring Network]]
 +
[[ro:Configurare retea]]
 +
[[ru:Configuring Network]]
 +
[[sk:Configuring Network]]
 +
[[tr:Ağ_Yapılandırması]]
 +
[[zh-CN:Configuring Network]]
 +
{{Article summary start|Sumario}}
 +
{{Article summary text| Este artículo proporciona una guía sencilla para configurar y solucionar problemas de red.}}
 +
{{Article summary heading|Descrpción}}
 +
{{Article summary text|Arch Linux provee [[netcfg (Español)|netcfg]] para la ''' gestión de redes''' (''configuring network''). {{ic|netcfg}} proporciona soporte para conexiones cableadas en desktops y servidores, así como configuraciones de [[Wireless Setup (Español)|conexiones inalámbricas]] y roaming para la movilidad de los usuarios, permitiendo una fácil gestión de los perfiles de red. [[NetworkManager (Español)|NetworkManager]] y [[Wicd (Español)|Wicd]] son alternativas populares de terceros.}}
 +
{{Article summary heading|Relacionado}}
 +
{{Article summary wiki|Jumbo Frames}}
 +
{{Article summary wiki|Firewalls}}
 +
{{Article summary wiki|Samba}}
 +
{{Article summary wiki|Wireless Setup}}
 +
{{Article summary end}}
  
{{i18n_links_start}}
+
== Comprobar la conexión ==
{{i18n_entry|Česky|Konfigurace_sítě_(Česky)}}
+
{{i18n_entry|English|Configuring_network}}
+
{{i18n_entry|Español|Configurando la Red (Español)}}
+
{{i18n_entry|Italiano|Configuring_network_(Italiano)}}
+
{{i18n_entry|Русский|Настройка_сети_(Русский)}}
+
{{i18n_entry|Slovensky|Statická IP a DHCP}}
+
{{i18n_entry|Türkçe|Ağ Ayarları}}
+
{{i18n_entry|简体中文|网络配置_(简体中文)}}
+
{{i18n_links_end}}
+
  
== Sumario ==
+
Muchas veces, la instalación de base habrá creado una configuración de red correctamente. Para comprobar si esto es así, utilice el siguiente comando:
  
Una guía simple para tener tu red funcionando.
+
{{Nota|La opción {{ic|-c 3}} establece que se ejecute ping tres veces. Vea {{ic|man ping}} para obtener más información}}.
  
 +
{{hc|$ ping -c 3 www.google.com|2=
 +
PING www.l.google.com (74.125.224.146) 56(84) bytes of data.
 +
64 bytes from 74.125.224.146: icmp_req=1 ttl=50 time=437 ms
 +
64 bytes from 74.125.224.146: icmp_req=2 ttl=50 time=385 ms
 +
64 bytes from 74.125.224.146: icmp_req=3 ttl=50 time=298 ms
  
== Cargar el módulo del dispositivo ==
+
--- www.l.google.com ping statistics ---
 +
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
 +
rtt min/avg/max/mdev = 298.107/373.642/437.202/57.415 ms}}
  
Si usas [[hwdetect]] debería detectar el módulo de tu tarjeta de red (NIC) y cargarlo de forma automática al inicio del sistema. Si no, necesitarás saber que módulo necesitas para tu modelo en particular.
+
Si funciona, se puede personalizar la configuración mediante las opciones siguientes.
  
Busca en la Web por el modelo de tu tarjeta, o prueba un LiveCD de Linux y luego encuentra el nombre del módulo que necesitas - ejecuta [[Linux And Hardware|lsmod]] para ver todos los módulos cargados después del booteo.
+
Si el comando anterior reporta errores de hosts desconocidos, significa que el equipo no pudo resolver este nombre de dominio. Esto podría estar relacionado con su proveedor de servicios o el router/gateway. Se puede intentar hacer ping a una dirección IP estática para comprobar que el equipo tiene acceso a Internet.
  
Ahora que sabes que módulo necesitas, cárgalo:
+
{{hc|$ ping -c 3 8.8.8.8|2=
 +
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
 +
64 bytes from 8.8.8.8: icmp_req=1 ttl=53 time=52.9 ms
 +
64 bytes from 8.8.8.8: icmp_req=2 ttl=53 time=72.5 ms
 +
64 bytes from 8.8.8.8: icmp_req=3 ttl=53 time=70.6 ms
  
# modprobe <nombre_del_módulo>
+
--- 8.8.8.8 ping statistics ---
 +
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
 +
rtt min/avg/max/mdev = 52.975/65.375/72.543/8.803 ms}}
  
Si no puedes/quieres usar un auto-cargador como [[hwdetect]] puedes añadirlo a la línea "modules" en <code>/etc/rc.conf</code>, así no tienes que cargarlo manualmente con modprobe cada vez que enciendas el PC. Por ejemplo, si tu módulo para la red es tg3:
+
{{Nota|{{ic|8.8.8.8}} es una dirección estática que es fácil de recordar. Es la dirección del servidor DNS primario de Google, por lo que se puede considerar fiable, y no es bloqueado generalmente por los sistemas de filtrado de contenidos y servidores proxy.}}
  
MODULES=(!usbserial tg3 snd-cmipci)
+
Si es capaz de hacer ping a esta dirección, es posible que desee añadir este nombre de servidor a su archivo {{ic|/etc/resolv.conf}}.
  
Otros módulos comúnes son el 8139too para las tarjetas con chipset Realtek o sis900 para las SiS.
+
== Establecer el nombre de host ==
  
== Configurar IP ==
+
El [[Wikipedia:es:Nombre_de_equipo|hostname]] es un nombre único creado para identificar una máquina en una red. Para establecer el nombre de host:
 +
# hostnamectl set-hostname '''myhostname'''
  
=== Para DHCP ===
+
{{Nota|Ya no es necesario editar {{ic|/etc/hosts}}, {{pkg|nss-myhostname}} proveerá resolución de nombres de host y se instalará en todos los sistemas por defecto.}}
  
Para esto, necesitas el paquete dhcpd (generalmente disponible luego de la instalación). Edita <code>/etc/rc.conf</code> de esta manera:
+
Para configurar el nombre de host temporalmente (hasta que se reinicie), utilice el comando {{ic|hostname}} del paquete {{Pkg|inetutils}}:
  
  eth0="dhcp"
+
  # hostname ''myhostname''
INTERFACES=(eth0)
+
ROUTES=(!gateway)
+
  
=== Para las IP estáticas ===
+
== Controlador del Dispositivo ==
 +
=== Comprobar el estado del controlador ===
  
Si compartes tu conexión con un PC con Windows sin un router, asegúrate de usar una IP estática en ambos ordenadores. Si no lo haces tendrás problemas en la LAN.
+
Udev debería detectar el módulo del adaptador de red ([[Wikipedia:es:Tarjeta_de_red|NIC]]) y cargarlo automáticamente al arranque. Compruebe la entrada "Ethernet controller" (o similar) que proporciona la salida {{ic|lspci -v}}. Cabe decir que los módulos del kernel contienen el controlador del propio dispositivo de red. Por ejemplo:
  
Necesitas:
+
{{hc|$ lspci -v|
 +
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
 +
...
 +
Kernel driver in use: atl1
 +
Kernel modules: atl1}}
  
* La dirección de tu IP estática,
+
A continuación, compruebe que se ha cargado el controlador a través de {{ic|dmesg <nowiki>|</nowiki> grep ''nombre_del_módulo''}}. Por ejemplo:
* La máscara de red,
+
* La dirección de broadcast,
+
* La puerta de enlace,
+
* Tus DNS,
+
* El nombre de tu dominio.
+
  
Si tienes una red privada, es seguro usar 192.168.*.'* para tus IPs, con la máscara de red 255.255.0.0 y la dirección broadcast 192.168.255.255.  Exceptuando que tengas un router, la dirección de puerta de enlace no es necesaria.  Edita <code>/etc/rc.conf</code> de esta manera, sustituyendo con tus IPs, mascara de red, broadcast y puerta de enlace:
+
$ dmesg | grep atl1
 +
    ...
 +
    atl1 0000:02:00.0: eth0 link is up 100 Mbps full duplex
  
eth0="eth0 82.137.129.59 netmask 255.255.255.0 broadcast 82.137.129.255"
+
Sáltese la siguiente sección, si el controlador se ha cargado con éxito. De lo contrario, tendrá que saber qué módulo es necesario para su modelo en particular.
INTERFACES=(eth0)
+
gateway="default gw 82.137.129.1"
+
ROUTES=(gateway)
+
  
y tu <code>/etc/resolv.conf</code> de esta manera, sustituyendo las IPs y el nombre de tu dominio:
+
=== Cargar el módulo del dispositivo ===
 +
 
 +
Busque en Google para localizar el correcto módulo/controlador de su chipset. Una vez que sepa qué módulo utilizar, puede [[Kernel_modules_(Español)#Cargando|cargarlos]] con:
 +
 
 +
# modprobe ''nombre_del_módulo''
 +
 
 +
Si udev no detecta y carga el módulo adecuado de forma automática durante el arranque, se puede añadir un archivo {{ic|*.conf}} a la carpeta {{ic|/etc/modules-load.d/}} para que no tenga que ejecutar {{ic|modprobe}} cada vez que arranque. Por ejemplo, si {{ic|tg3}} es el módulo de red:
 +
 
 +
# tee /etc/modules-load.d/tg3.conf <<< "tg3"
 +
 
 +
Otros módulos comunes son {{ic|8139too}} para tarjetas con chipset Realtek, o {{ic|sis900}} para tarjetas con chipset SiS.
 +
 
 +
== Interfaces de red ==
 +
=== Nombres permanentes para los dispositivos ===
 +
 
 +
Para las placas base que tienen tarjetas de red integradas, es importante saber cuál es considerada la NIC primaria (por ejemplo {{ic|eth0}}) y cuál es considerada la NIC secundaria (por ejemplo, {{ic|eth1}}). Muchos de los problemas son causados ​​por la configuración incorrecta cuando los usuarios establecen la red para {{ic|eth0}}, cuando, en realidad, tienen su cable Ethernet conectado a {{ic|eth1}}.
 +
 
 +
[[Udev (Español)|Udev]] es responsable de asignar qué nombre se dé a cada dispositivo. Con udev y los controladores de red modulares, la numeración de la interfaz de red no permanece la misma entre cada reinicio, ya que los controladores se cargan en paralelo y, por lo tanto, en orden aleatorio. La configuración de la conexión a la red es difícil, si no se sabe si su tarjeta se llama {{ic|eth0}} o {{ic|eth1}}. Para poder solucionar este problema use {{ic|ifrename}}. Véase [[Rename network interfaces|Renombrar interfaces de red]]. También es posible crear manualmente reglas udev que asignen nombres a las interfaces basadas en la dirección MAC de la interfaz. Véase [[Udev_(Español)#Dispositivo_Network|Dispositivo de red]].
 +
 
 +
=== Conocer el nombre actual de los dispositivos ===
 +
 
 +
Los nombres actuales de NIC pueden ser individualizados utilizando la utilidad {{ic|ip}}:
 +
 
 +
 
 +
{{hc|$ ip addr <nowiki>|</nowiki> sed '/^[0-9]/!d;s/: <.*$//'|
 +
1: lo
 +
2: eth1
 +
3: eth0
 +
4: firewire0}}
 +
 
 +
=== Activación y desactivación de las interfaces de red ===
 +
 
 +
Puede activar o desactivar interfaces de red usando:
 +
 
 +
# ip link set eth0 up
 +
# ip link set eth0 down
 +
 
 +
Para comprobar el resultado:
 +
 
 +
{{hc|$ ip addr show dev eth0|
 +
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
 +
[...]}}
 +
 
 +
== Configurar la dirección IP ==
 +
 
 +
Tenemos dos opciones: la asignación dinámica de la dirección  usando [[Wikipedia:es:Dynamic_Host_Configuration_Protocol|DHCP]] o una dirección "estática" que no cambia.
 +
 +
=== Dirección IP dinámica ===
 +
==== Ejecutar manualmente el demonio DHCP Client ====
 +
 
 +
Tenga en cuenta que {{ic|dhcpcd}} no es {{ic|dhcpd}}.
 +
 
 +
{{hc|$ dhcpcd eth0|
 +
dhcpcd: version 5.1.1 starting
 +
dhcpcd: eth0: broadcasting for a lease
 +
...
 +
dhcpcd: eth0: leased 192.168.1.70 for 86400 seconds}}
 +
 
 +
Y ahora, {{ic|ip addr show dev eth0}} debe mostrar su dirección inet.
 +
 
 +
Para algunos usuarios, {{ic|dhclient}} (con el paquete {{Pkg|dhclient}}) ha funcionado cuando {{ic|dhcpcd}} ha fallado.
 +
 
 +
==== Ejecutar DHCP durante el arranque ====
 +
 
 +
Si sólo desea utilizar DHCP para la conexión Ethernet, puede utilizar {{ic|dhcpcd@.service}} (proporcionado por el paquete {{Pkg|dhcpcd}}).
 +
 
 +
Para habilitar DHCP para {{ic|eth0}}, sólo tiene que utilizar:
 +
 
 +
# systemctl start dhcpcd@eth0
 +
 
 +
Puede activar el servicio para que se inicie automáticamente en el arranque con:
 +
 
 +
# systemctl enable dhcpcd@eth0
 +
 
 +
Si el servicio dhcpd se inicia antes que el módulo de la tarjeta de red ({{bug|30235}}), agregue manualmente la tarjeta de red a {{ic|/etc/modules-load.d/*.conf}}. Por ejemplo, si necesita cargar tarjetas Realtek {{ic|r8169}}, cree:
 +
 
 +
{{hc|/etc/modules-load.d/realtek.conf|
 +
r8169}}
 +
 
 +
Si utiliza DHCP  y '''no''' quiere que se asignen automáticamente servidores DNS cada vez que se inicie su red, agregue la siguiente línea a la última sección de {{ic|dhcpcd.conf}}:
 +
 
 +
{{hc|/etc/dhcpcd.conf|
 +
nohook resolv.conf}}
 +
 
 +
Para evitar que {{ic|dhcpcd}} añada nombres de dominio de servidores a {{ic|/etc/resolve.conf}}, use el parámetro {{ic|nooption}}:
 +
 
 +
{{hc|/etc/dhcpcd.conf|
 +
nooption domain_name_servers}}
 +
 
 +
A continuación, añada su propio nombre de servidor DNS a {{ic|/etc/resolv.conf}}.
 +
 
 +
Se puede utilizar el paquete {{pkg|openresolv}} si desea controlar varios procesos diferentes mediante {{ic|/etc/resolv.conf}} (por ejemplo, {{pkg|dhcpcd}} y un cliente VPN). No es necesaria ninguna configuración adicional de {{pkg| dhcpcd}} para usar {{pkg|openresolv}}.
 +
 
 +
{{Nota|Es posible tener una dirección IP estática usando {{pkg|dhcpcd}}. Simplemente edite su archivo {{ic|/etc/conf.d/dhcpcd}} para modificar algo como esto (donde {{ic|xxxx}} es la dirección IP que desee):
 +
 
 +
{{bc|1=DHCPCD_ARGS="-q -s x.x.x.x"}}}}
 +
 
 +
=== Dirección IP estática ===
 +
 
 +
Hay varias razones por las que se puede desear asignar direcciones IP estáticas a su red. Por ejemplo, se puede obtener un cierto grado de previsibilidad en las direcciones permanentes, o puede querer no tener disponible un servidor DHCP.
 +
 
 +
{{Nota|Si comparte su conexión a Internet desde una máquina Windows sin un router, asegúrese de utilizar direcciones IP estáticas en ambos equipos para evitar problemas de LAN.}}
 +
 
 +
Necesitará:
 +
 
 +
* La dirección IP estática,
 +
* La [[Wikipedia:es:Subred|máscara de subred]],
 +
* La [[Wikipedia:Broadcast_address|dirección Broadcast]],
 +
* Direcciones IP del [[Wikipedia:es:Puerta_de_enlace_predeterminada|Gateway]],
 +
* Direcciones IP del [[Wikipedia:Name_server|nombre de los servidores]] IP,
 +
* Nombre de dominio (a menos que sea una LAN local, en cuyo caso puede se puede poner up).
 +
 
 +
Si está ejecutando una red privada, es seguro usar las direcciones IP del tipo 192.168.*.*, una máscara de subred 255.255.255.0 y una dirección de broadcast 192.168.*.255. La puerta de entrada suele ser 192.168.*.1 o 192.168.*.254. Si no tiene una puerta de entrada (es decir, router), puede dejarlo en blanco. Modifique {{ic|/etc/rc.conf}} como el de abajo, sustituyendo sus propios valores para la dirección IP, máscara de red, broadcast y gateway:
 +
 
 +
 
 +
interface=eth0
 +
address=192.168.0.2
 +
netmask=255.255.255.0
 +
broadcast=192.168.1.255
 +
gateway=192.168.22.1
 +
 
 +
Modifique el archivo {{ic|/etc/resolv.conf}} como sigue, sustituyendo las direcciones del propio nombre del servidor y el nombre de su dominio local:
  
 
  nameserver 61.23.173.5
 
  nameserver 61.23.173.5
Line 71: Line 214:
 
  search example.com
 
  search example.com
  
Puedes incluir tantos servidores como quieras.
+
{{Nota|En la actualidad, se pueden incluir un máximo de 3 líneas {{ic|nameserver}}.}}
  
Si usas DHCP y no quieres que las DNS cambien cada vez que inicias la red, asegúrate de añadir "-R" a <code>DHCPCD_ARGS</code> en <code>/etc/conf.d/dhcpcd</code> (usado por <code>/etc/rc.d/network</code>). Esto evita que DHCP reescriba <code>/etc/resolv.conf</code> al arranque:
+
==== Asignación manual ====
  
DHCPCD_ARGS="-R -t 30 -h $NOMBRE_DE_HOST"
+
Se puede asignar una dirección IP estática desde la consola:
  
==Otra opción==
+
# ip addr add <IP address>/<subnet mask> dev <interface>
Si por alguna razón dhcpcd eth0 falla, instala dhclient (pacman -Sy dhclient) y reemplázalo por '<code>dhclient eth0</code>'.
+
  
== Cambiar nombre del PC ==
+
Por ejemplo:
  
Edita <code>/etc/rc.conf</code> y cambia el HOSTNAME por el que tú quieras:
+
# ip addr add 192.168.1.2/24 dev eth0
HOSTNAME="lo_que_tú_quieras"
+
  
 +
{{Nota|La máscara de subred se especifica tambien con [[Wikipedia:CIDR_notation|notación CIDR]].}}
  
== Cambiar el HOSTNAME/IP ==
+
Para conocer más opciones, vea {{ic|man ip}}.
  
Edita <code>/etc/hosts</code> y añade el mismo HOSTNAME que pusiste en <code>/etc/rc.conf</code> :
+
Añada su puerta de entrada (''gateway'') de esta manera:
127.0.0.1      lo_que_tú_quieras.domain.org  localhost.localdomain      localhost    lo_que_tú_quieras
+
  
Este formato, incluyendo las entradas localhost son necesarias para el buen funcionamiento de los programas.
+
# ip route add default via <dirección IP gateway predeterminada>
  
== Cargar Configuración ==
+
Por ejemplo:
Para probar tu configuración reinicia el ordenador o, como root, ejecuta <code>/etc/rc.d/network restart</code>.
+
Intenta hacer un ping a tu puerta de enlace, servidor DNS, el sitio de tu ISP o cualquier otro, en ese orden, para detectar cualquier problema de conexión.
+
  
 +
# ip route add default via 192.168.1.1
  
== Más configuraciones ==
+
Si le sale el mensaje de error "No such process", significa que tiene que ejecutar {{ic|ip link set dev eth0 up}} como root.
  
=== Configurar una red Wireless ===
+
==== Calcular direcciones ====
  
La configuración del wireless (wlan) es el tema de otra [[Wireless Setup|entrada en la wiki]].
+
Se puede utilizar el comando {{ic | ipcalc}}, proporcionado por el paquete {{pkg|ipcalc}}, para el calcular la IP broadcast, red, máscara de red y rangos de host para las configuraciones más avanzadas. Por ejemplo, es posible  utilizar ethernet a través de firewire para conectar un PC con Windows para Arch. Para la seguridad y organización de la red, puede colocarlos en su propia red, configurar la máscara de red y broadcast de manera que sean las dos únicas máquinas en ella. Para mostrar las direcciones de máscara de red y broadcast, puede utilizar ipcalc, proporcionando la IP arch del firewire nic 10.66.66.1, y especificando ipcalc, debe crear una red de sólo dos hosts.
  
=== Firewall ===
+
{{hc|$ ipcalc -nb 10.66.66.1 -s 1|2=
 +
Address:  10.66.66.1
  
Puedes instalar un [[Firewalls|firewall]] para sentirte más seguro.
+
Netmask:  255.255.255.252 = 30
 +
Network:  10.66.66.0/30
 +
HostMin:  10.66.66.1
 +
HostMax:  10.66.66.2
 +
Broadcast: 10.66.66.3
 +
Hosts/Net: 2                    Class A, Private Internet}}
  
=== Ifplugd ===
+
== Cargar configuración ==
  
Puedes instalar un demonio que automáticamente configurará tu dispositivo de Ethernet cuando se conecte algún cable, y luego lo desconfigurará cuando el cable se desconecte. Esto es útil en laptops con adaptadores de red onboard, dado que solo se configurará cuando un cable este conectado. También sirve si quieres reiniciar la red sin reiniciar el ordenador o sin usar la terminal.
+
Para probar cualquier configuración reinicie el ordenador, o como root, ejecute:
  
Instalarlo es muy sencillo ya que esta en [extra]:
+
# rc.d restart network
  
# pacman -S ifplugd
+
Pruebe a hacer ping a su gateway, servidor DNS, proveedor de ISP y otros sitios de Internet, en ese orden, para detectar cualquier problema de conexión en el camino, como en este ejemplo:
  
Por default esta configurado para funcionar con el dispositivo eth0. Esto y otras configuraciones se pueden cambiar en <code>/etc/ifplugd/ifplugd.conf</code>.
+
$ ping -c 3 www.google.com
  
Inicialo con
+
== Ajustes adicionales ==
 +
=== ifplugd para portátiles ===
  
# /etc/rc.d/ifplugd start
+
{{Pkg|ifplugd}} disponible en los [[Official Repositories|repositorios oficiales]] es un demonio que configura automáticamente el dispositivo Ethernet, cuando un cable de red está enchufado y automáticamente se desconfigura si el cable se retira. Esto es útil en portátiles con los adaptadores de red integrados, ya que sólo se va a configurar la interfaz cuando un cable está realmente conectado. Otro utilidad es cuando sólo tiene que reiniciar la red, pero no desea reiniciar el equipo o utilizar la shell.
  
o añadelo a la línea DAEMONS en <code>/etc/rc.conf</code>.
+
Por defecto, está configurado para trabajar para el dispositivo {{ic|eth0}}. Esta y otras configuraciones, como demoras, se pueden establecer en {{ic|/etc/ifplugd/ifplugd.conf}}.
  
=== bonding ===
+
[[Daemon#Performing daemon actions manually|Inicie el demonio ifplugd]] y añada {{ic|ifplugd}} a la [[Daemons#Starting on Boot|matriz DAEMONS]] para que se inicie automáticamente en el arranque.
Puedes instalar 'ifenslave' para bindear dos cables Ethernet reales con una dirección IP.
+
 
/etc/conf.d/bonding
+
Como alternativa, en systemd, habilitando {{ic|net-auto-wired.service}} debe comenzar ifplugd en el arranque si tiene {{pkg|netcfg}} instalado, de lo contrario puede usar {{ic|ifplugd@eth0.service}}.
  bond_bond0="eth0 eth1"
+
 
  BOND_INTERFACES=(bond0)
+
=== Bonding o LAG ===
/etc/rc.conf
+
 
 +
Necesitará {{Pkg|netcfg}} disponible en los [[Official Repositories|repositorios oficiales]], así como el paquete {{AUR|netcfg-bonding}} disponible en [[AUR]].
 +
 
 +
Edite/cree los siguientes archivos:
 +
 
 +
{{hc|/etc/network.d/bonded|2=
 +
CONNECTION="bonding"
 +
  INTERFACE="bond0"
 +
SLAVES="eth0 eth1"
 +
  IP="dhcp"
 +
DHCP_TIMEOUT=10}}
 +
 
 +
{{hc|/etc/rc.conf|2=
 
  MODULES=(... bonding ...)
 
  MODULES=(... bonding ...)
  bond0="bond0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255"
+
...
  INTERFACES=(bond0)
+
  interface=bond0 #comment other lines (address,netmask,gateway,...)
reinicia la red con
+
...
/etc/rc.d/network restart
+
NETWORKS=(... bonded ...)
=== multiples IPs en multiples tarjetas===
+
...
una IP con una tarjeta
+
  DAEMONS=(... net-profiles ...) #Replace "network".}}
vi /etc/rc.conf
+
 
  eth0="eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
+
{{Nota|Para cambiar la modalidad ''bonding'' (por defecto es ''round robin'') para, por ejemplo, la agregación dinámica del enlace:
  INTERFACES=(lo eth0)
+
 
una IP con una tarjeta (BUG:/etc/rc.d/network stop)
+
Cree {{ic|/etc/modprobe.d/bonding.conf}}:
vi /etc/rc.conf
+
 
  eth0="eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
+
{{hc|/etc/modprobe.d/bonding.conf|2=
  eth1="eth0:1 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
+
options bonding mode=4
  INTERFACES=(lo eth0 eth1)
+
options bonding miimon=100}}
una ip con dos tarjetas
+
 
pacman -S ifenslave
+
Para obtener más información acerca de las diferentes políticas de ''bonding'' (y configuraciones de otros controladores), véase [http://sourceforge.net/projects/bonding/files/Documentation/ Linux Ethernet Bonding Driver HOWTO].}}
vi /etc/rc.conf
+
 
  bond0="bond0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
+
Para activar la nueva puerta de entrada, ejecute el modprobe {{ic|bonding}}, detenga {{ic|network}} e inicie el servicio {{ic|net-profiles}}:
  INTERFACES=(lo bond0)
+
  MODULES=(... bonding ...)
+
# modprobe bonding
dos IPs con dos tarjetas (BUG:/etc/rc.d/network stop)
+
# rc.d stop network
pacman -S ifenslave
+
# rc.d start net-profiles
vi /etc/rc.conf
+
 
  bond0="bond0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
+
Para comprobar el estado y modalidad de bonding:
  bond01="bond0:1 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
+
 
  INTERFACES=(lo bond0 bond01)
+
$ cat /proc/net/bonding/bond0
  MODULES=(... bonding ...)
+
 
 +
=== Aliasing de direcciones IP ===
 +
 
 +
El ''aliasing'' IP es el proceso de agregar más de una dirección IP a una interfaz de red. Con esto, un nodo en una red puede tener varias conexiones a una red, cada uno sirviendo a un propósito diferente.
 +
 
 +
Para utilizar los alias de IP a partir de [[netcfg]], cambie los comandos {{ic|POST_UP}} y {{ic|PRE_DOWN}} en su perfil de red para configurar manualmente las direcciones IP adicionales. Vea [https://bbs.archlinux.org/viewtopic.php?pid=1036395#p1036395 esto] para más detalles.
 +
 
 +
==== Ejemplo ====
 +
 
 +
Necesitará {{Pkg|netcfg}} disponible en los [[Official Repositories|repositorios oficiales]].
 +
 
 +
Prepare la configuración:
 +
 
 +
{{hc|/etc/network.d/mynetwork|2=
 +
 
 +
CONNECTION='ethernet'
 +
DESCRIPTION='Five different addresses on the same NIC.'
 +
INTERFACE='eth0'
 +
IP='static'
 +
ADDR='192.168.1.10'
 +
GATEWAY='192.168.1.1'
 +
DNS=('192.168.1.1')
 +
DOMAIN=''
 +
POST_UP='x=0; for i in 11 12 13 14; do ip addr add 192.168.1.$i/24 brd 192.168.1.255 dev eth0 label eth0:$((x++)); done'
 +
PRE_DOWN='for i in 11 12 13 14; do ip addr del 192.168.1.$i/24 dev eth0; done'}}
 +
 
 +
{{hc|/etc/rc.conf|2=
 +
NETWORKS=(mynetwork)
 +
 
 +
...
 +
 
 +
DAEMONS=(... net-profiles ...)}}
 +
 
 +
=== Cambio de direcciones MAC/hardware  ===
 +
 
 +
Consulte [[MAC Address Spoofing]].
  
== Problemas ==
+
== Solución de problemas ==
  
 
=== Intercambiando ordenadores con cable modem ===
 
=== Intercambiando ordenadores con cable modem ===
Line 179: Line 373:
 
La conexión resultante, en el mejor de los casos, es muy lenta o núla.
 
La conexión resultante, en el mejor de los casos, es muy lenta o núla.
  
==== ¿Cómo diagnosticar un problema? ====
+
==== ¿Cómo diagnosticar este problema? ====
  
 
En algúnos casos no podrás usar conexiones TCP (HTTP, FTP, ...) para nada, y en otros no podrás comunicarte con algunos hosts (muy pocos).
 
En algúnos casos no podrás usar conexiones TCP (HTTP, FTP, ...) para nada, y en otros no podrás comunicarte con algunos hosts (muy pocos).
Line 189: Line 383:
 
Podrías probar usando WireShark. Puede que veas comunicaciones ICMP y UDP bien realizadas, pero problemas con las conexiones TCP (solo con hosts extranjeros).
 
Podrías probar usando WireShark. Puede que veas comunicaciones ICMP y UDP bien realizadas, pero problemas con las conexiones TCP (solo con hosts extranjeros).
  
====¿Cómo arreglarlo? (El camino malo) ====
+
====¿Cómo arreglarlo? (El método equivocado) ====
  
 
Para arreglarlo por el mal camino, puedes cambiar el valor tcp_rmem, donde se realiza la calculación del Scale Factor. Si bien debería funcionar para la mayoría de los hosts, no es seguro, especialmente para los que son muy distantes.
 
Para arreglarlo por el mal camino, puedes cambiar el valor tcp_rmem, donde se realiza la calculación del Scale Factor. Si bien debería funcionar para la mayoría de los hosts, no es seguro, especialmente para los que son muy distantes.
Line 197: Line 391:
 
O podrías remover alguno de tus módulos RAM.
 
O podrías remover alguno de tus módulos RAM.
  
==== ¿Cómo arreglarlo? (El buen camino) ====
+
==== ¿Cómo arreglarlo? (El método correcto) ====
  
 
Simple: Deshabilita Window Scaling. Si bien el Window Scaling es una buena característica TCP, puede resultar mala, especialmente si no puedes reparar tu router dañado. Hay varias formas de deshabilitar Window Scaling, y parece que la mejor (la que funcionará en la mayoría de los kernels) es añadir las siguientes líneas al <code>/etc/rc.local</code>:
 
Simple: Deshabilita Window Scaling. Si bien el Window Scaling es una buena característica TCP, puede resultar mala, especialmente si no puedes reparar tu router dañado. Hay varias formas de deshabilitar Window Scaling, y parece que la mejor (la que funcionará en la mayoría de los kernels) es añadir las siguientes líneas al <code>/etc/rc.local</code>:
Line 203: Line 397:
 
  echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
 
  echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
  
==== ¿Cómo arreglarlo? (El mejor camino) ====
+
==== ¿Cómo arreglarlo? (El método óptimo)====
  
 
Este problema es causado por un router/firewall dañado. Cámbialos.  
 
Este problema es causado por un router/firewall dañado. Cámbialos.  
  
==== ¿Más de esto? ====
+
==== Información adicional sobre este problema ====
  
Esta sección se basa en un artículo de LWN [http://lwn.net/Articles/92727/ TCP window scaling and broken router] (ingles) y un artículo de Kernel Trap: [http://kerneltrap.org/node/6723 Window Scaling on the Internet] (ingles).
+
Esta sección se basa en un artículo de LWN [http://lwn.net/Articles/92727/ TCP window scaling and broken router] (ingles) y un artículo de Kernel Trap: [http://kerneltrap.org/node/6723 Window Scaling on the Internet] (en ingles).
 
+
Y recientemente, algunos usuarios de Arch tuvieron este problema:
+
 
+
* [http://www.archlinux.org/pipermail/arch/2006-June/011250.html Odd network issue]
+
* [http://www.archlinux.org/pipermail/arch/2006-September/011943.html Kernel 2.6.17 and TCP window scaling] &mdash; el tema que inició este artículo
+
  
 
También hay varios temas similares en LKML.
 
También hay varios temas similares en LKML.
  
  
=== Problema con Realtek: Sin Link / WOL ===
+
=== Problema con Realtek: sin Link / WOL ===
  
 
Usuarios de una NIC (tarjetas / y onboard) basada en Realtek 8168 8169 8101 8111 pueden pasar por un problema donde NIC parece estar deshabilitado desde el boot y la luz Link no se enciende. Esto ocurre generalmente en un sistema dual boot donde esta instalado un Windows. Parece que la causa es usar los drivers oficiales de Realtek (de después de Mayo del 2007) en Windows.  Estos nuevos drivers deshabilitan la característica Wake-On-Lan, deshabilitando el NIC al momento de apagar Windows, y dejándolo deshabilitado hasta el próximo arranque. Sabrás si tienes este problema si ves que la luz del Link permanece apagada hasta que carga Windows. Lo normal sería que la luz de Link este siempre encendida mientras el sistema este funcionando. Este problema también afectará a otros sistemas operativos con drivers no actualizados.  
 
Usuarios de una NIC (tarjetas / y onboard) basada en Realtek 8168 8169 8101 8111 pueden pasar por un problema donde NIC parece estar deshabilitado desde el boot y la luz Link no se enciende. Esto ocurre generalmente en un sistema dual boot donde esta instalado un Windows. Parece que la causa es usar los drivers oficiales de Realtek (de después de Mayo del 2007) en Windows.  Estos nuevos drivers deshabilitan la característica Wake-On-Lan, deshabilitando el NIC al momento de apagar Windows, y dejándolo deshabilitado hasta el próximo arranque. Sabrás si tienes este problema si ves que la luz del Link permanece apagada hasta que carga Windows. Lo normal sería que la luz de Link este siempre encendida mientras el sistema este funcionando. Este problema también afectará a otros sistemas operativos con drivers no actualizados.  
 
Aquí, algunas maneras de arreglar este problema:
 
Aquí, algunas maneras de arreglar este problema:
  
==== Método 1 - Volver a la versión anterior/Cambiar (d)el driver en Windows ====
+
==== Método 1 - Restaurar el controlador de Windows ====
  
Puedes volver a la versión brindada por Microsoft del driver NIC (si esta disponible), o volver a la versión anterior/instalar un driver oficial Realtek de antes de Mayo del 2007 (tal vez lo encuentres en el CD que te dieron con tu hardware).
+
Puedes volver a la versión brindada por Microsoft del driver NIC (si esta disponible), o volver a la versión anterior/instalar un driver oficial Realtek anterior a Mayo del 2007 (tal vez lo encuentre en el CD que le dieron con su hardware).
  
==== Método 2 - Habilitar WOL en el driver de Windows ====
+
==== Método 2 - Habilitar WOL en el controlador de Windows ====
  
 
Probablemente la mejor solución (y la más rápida) es cambiar esta configuración en el driver de Windows. De esta forma se solucionaría para todos los SOs. En Windows, en el administrador de dispositivos, encuentra tu adaptador Realtek y dale doble click. En la pestaña "avanzado" habilita "wake-on-lan después de apagar".
 
Probablemente la mejor solución (y la más rápida) es cambiar esta configuración en el driver de Windows. De esta forma se solucionaría para todos los SOs. En Windows, en el administrador de dispositivos, encuentra tu adaptador Realtek y dale doble click. En la pestaña "avanzado" habilita "wake-on-lan después de apagar".
Line 234: Line 423:
 
==== Método 3 - Nuevo driver de Realtek para Linux ====
 
==== Método 3 - Nuevo driver de Realtek para Linux ====
  
Drivers nuevos de estas tarjetas para Linux pueden encontrarse en el sitio de Realtek.
+
Los drivers nuevos de estas tarjetas para Linux pueden encontrarse en el sitio de Realtek (no probado aunque se cree que también resuelve el problema).
 +
 
 +
==== Method 4 - Habilitar ''LAN Boot ROM'' en la BIOS/CMOS ====
 +
 
 +
Parece que el ajuste ''Integrated Peripherals --> Onboard LAN Boot ROM --> Enabled'' en BIOS/CMOS del chip Realtek reactiva LAN en el sistema al reiniciar, a pesar de que el controlador de Windows lo desactive en el apagado del sistema operativo. <br><small> Esto fue probado con éxito varias veces con la placa base GIGABYTE GA-G31M-ES2L con la versión F8 liberada de la BIOS el. YMMV.</small>

Revision as of 19:47, 6 November 2012

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Comprobar la conexión

Muchas veces, la instalación de base habrá creado una configuración de red correctamente. Para comprobar si esto es así, utilice el siguiente comando:

Nota: La opción -c 3 establece que se ejecute ping tres veces. Vea man ping para obtener más información
.
$ ping -c 3 www.google.com
PING www.l.google.com (74.125.224.146) 56(84) bytes of data.
64 bytes from 74.125.224.146: icmp_req=1 ttl=50 time=437 ms
64 bytes from 74.125.224.146: icmp_req=2 ttl=50 time=385 ms
64 bytes from 74.125.224.146: icmp_req=3 ttl=50 time=298 ms

--- www.l.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 298.107/373.642/437.202/57.415 ms

Si funciona, se puede personalizar la configuración mediante las opciones siguientes.

Si el comando anterior reporta errores de hosts desconocidos, significa que el equipo no pudo resolver este nombre de dominio. Esto podría estar relacionado con su proveedor de servicios o el router/gateway. Se puede intentar hacer ping a una dirección IP estática para comprobar que el equipo tiene acceso a Internet.

$ ping -c 3 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=53 time=52.9 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=53 time=72.5 ms
64 bytes from 8.8.8.8: icmp_req=3 ttl=53 time=70.6 ms

--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 52.975/65.375/72.543/8.803 ms
Nota: 8.8.8.8 es una dirección estática que es fácil de recordar. Es la dirección del servidor DNS primario de Google, por lo que se puede considerar fiable, y no es bloqueado generalmente por los sistemas de filtrado de contenidos y servidores proxy.

Si es capaz de hacer ping a esta dirección, es posible que desee añadir este nombre de servidor a su archivo /etc/resolv.conf.

Establecer el nombre de host

El hostname es un nombre único creado para identificar una máquina en una red. Para establecer el nombre de host:

# hostnamectl set-hostname myhostname
Nota: Ya no es necesario editar /etc/hosts, nss-myhostname proveerá resolución de nombres de host y se instalará en todos los sistemas por defecto.

Para configurar el nombre de host temporalmente (hasta que se reinicie), utilice el comando hostname del paquete inetutils:

# hostname myhostname

Controlador del Dispositivo

Comprobar el estado del controlador

Udev debería detectar el módulo del adaptador de red (NIC) y cargarlo automáticamente al arranque. Compruebe la entrada "Ethernet controller" (o similar) que proporciona la salida lspci -v. Cabe decir que los módulos del kernel contienen el controlador del propio dispositivo de red. Por ejemplo:

$ lspci -v
 02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
 	...
 	Kernel driver in use: atl1
 	Kernel modules: atl1

A continuación, compruebe que se ha cargado el controlador a través de dmesg | grep nombre_del_módulo. Por ejemplo:

$ dmesg | grep atl1
   ...
   atl1 0000:02:00.0: eth0 link is up 100 Mbps full duplex

Sáltese la siguiente sección, si el controlador se ha cargado con éxito. De lo contrario, tendrá que saber qué módulo es necesario para su modelo en particular.

Cargar el módulo del dispositivo

Busque en Google para localizar el correcto módulo/controlador de su chipset. Una vez que sepa qué módulo utilizar, puede cargarlos con:

# modprobe nombre_del_módulo

Si udev no detecta y carga el módulo adecuado de forma automática durante el arranque, se puede añadir un archivo *.conf a la carpeta /etc/modules-load.d/ para que no tenga que ejecutar modprobe cada vez que arranque. Por ejemplo, si tg3 es el módulo de red:

# tee /etc/modules-load.d/tg3.conf <<< "tg3"

Otros módulos comunes son 8139too para tarjetas con chipset Realtek, o sis900 para tarjetas con chipset SiS.

Interfaces de red

Nombres permanentes para los dispositivos

Para las placas base que tienen tarjetas de red integradas, es importante saber cuál es considerada la NIC primaria (por ejemplo eth0) y cuál es considerada la NIC secundaria (por ejemplo, eth1). Muchos de los problemas son causados ​​por la configuración incorrecta cuando los usuarios establecen la red para eth0, cuando, en realidad, tienen su cable Ethernet conectado a eth1.

Udev es responsable de asignar qué nombre se dé a cada dispositivo. Con udev y los controladores de red modulares, la numeración de la interfaz de red no permanece la misma entre cada reinicio, ya que los controladores se cargan en paralelo y, por lo tanto, en orden aleatorio. La configuración de la conexión a la red es difícil, si no se sabe si su tarjeta se llama eth0 o eth1. Para poder solucionar este problema use ifrename. Véase Renombrar interfaces de red. También es posible crear manualmente reglas udev que asignen nombres a las interfaces basadas en la dirección MAC de la interfaz. Véase Dispositivo de red.

Conocer el nombre actual de los dispositivos

Los nombres actuales de NIC pueden ser individualizados utilizando la utilidad ip:


$ ip addr | sed '/^[0-9]/!d;s/: <.*$//'
1: lo
2: eth1
3: eth0
4: firewire0

Activación y desactivación de las interfaces de red

Puede activar o desactivar interfaces de red usando:

# ip link set eth0 up
# ip link set eth0 down

Para comprobar el resultado:

$ ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
[...]

Configurar la dirección IP

Tenemos dos opciones: la asignación dinámica de la dirección usando DHCP o una dirección "estática" que no cambia.

Dirección IP dinámica

Ejecutar manualmente el demonio DHCP Client

Tenga en cuenta que dhcpcd no es dhcpd.

$ dhcpcd eth0
 dhcpcd: version 5.1.1 starting
 dhcpcd: eth0: broadcasting for a lease
 ...
 dhcpcd: eth0: leased 192.168.1.70 for 86400 seconds

Y ahora, ip addr show dev eth0 debe mostrar su dirección inet.

Para algunos usuarios, dhclient (con el paquete dhclient) ha funcionado cuando dhcpcd ha fallado.

Ejecutar DHCP durante el arranque

Si sólo desea utilizar DHCP para la conexión Ethernet, puede utilizar dhcpcd@.service (proporcionado por el paquete dhcpcd).

Para habilitar DHCP para eth0, sólo tiene que utilizar:

# systemctl start dhcpcd@eth0

Puede activar el servicio para que se inicie automáticamente en el arranque con:

# systemctl enable dhcpcd@eth0

Si el servicio dhcpd se inicia antes que el módulo de la tarjeta de red (FS#30235), agregue manualmente la tarjeta de red a /etc/modules-load.d/*.conf. Por ejemplo, si necesita cargar tarjetas Realtek r8169, cree:

/etc/modules-load.d/realtek.conf
r8169

Si utiliza DHCP y no quiere que se asignen automáticamente servidores DNS cada vez que se inicie su red, agregue la siguiente línea a la última sección de dhcpcd.conf:

/etc/dhcpcd.conf
nohook resolv.conf

Para evitar que dhcpcd añada nombres de dominio de servidores a /etc/resolve.conf, use el parámetro nooption:

/etc/dhcpcd.conf
nooption domain_name_servers

A continuación, añada su propio nombre de servidor DNS a /etc/resolv.conf.

Se puede utilizar el paquete openresolv si desea controlar varios procesos diferentes mediante /etc/resolv.conf (por ejemplo, dhcpcd y un cliente VPN). No es necesaria ninguna configuración adicional de dhcpcd para usar openresolv.

Nota: Es posible tener una dirección IP estática usando dhcpcd. Simplemente edite su archivo /etc/conf.d/dhcpcd para modificar algo como esto (donde xxxx es la dirección IP que desee):
DHCPCD_ARGS="-q -s x.x.x.x"

Dirección IP estática

Hay varias razones por las que se puede desear asignar direcciones IP estáticas a su red. Por ejemplo, se puede obtener un cierto grado de previsibilidad en las direcciones permanentes, o puede querer no tener disponible un servidor DHCP.

Nota: Si comparte su conexión a Internet desde una máquina Windows sin un router, asegúrese de utilizar direcciones IP estáticas en ambos equipos para evitar problemas de LAN.

Necesitará:

Si está ejecutando una red privada, es seguro usar las direcciones IP del tipo 192.168.*.*, una máscara de subred 255.255.255.0 y una dirección de broadcast 192.168.*.255. La puerta de entrada suele ser 192.168.*.1 o 192.168.*.254. Si no tiene una puerta de entrada (es decir, router), puede dejarlo en blanco. Modifique /etc/rc.conf como el de abajo, sustituyendo sus propios valores para la dirección IP, máscara de red, broadcast y gateway:


interface=eth0
address=192.168.0.2
netmask=255.255.255.0
broadcast=192.168.1.255
gateway=192.168.22.1

Modifique el archivo /etc/resolv.conf como sigue, sustituyendo las direcciones del propio nombre del servidor y el nombre de su dominio local:

nameserver 61.23.173.5
nameserver 61.95.849.8
search example.com
Nota: En la actualidad, se pueden incluir un máximo de 3 líneas nameserver.

Asignación manual

Se puede asignar una dirección IP estática desde la consola:

# ip addr add <IP address>/<subnet mask> dev <interface>

Por ejemplo:

# ip addr add 192.168.1.2/24 dev eth0
Nota: La máscara de subred se especifica tambien con notación CIDR.

Para conocer más opciones, vea man ip.

Añada su puerta de entrada (gateway) de esta manera:

# ip route add default via <dirección IP gateway predeterminada>

Por ejemplo:

# ip route add default via 192.168.1.1

Si le sale el mensaje de error "No such process", significa que tiene que ejecutar ip link set dev eth0 up como root.

Calcular direcciones

Se puede utilizar el comando ipcalc, proporcionado por el paquete ipcalc, para el calcular la IP broadcast, red, máscara de red y rangos de host para las configuraciones más avanzadas. Por ejemplo, es posible utilizar ethernet a través de firewire para conectar un PC con Windows para Arch. Para la seguridad y organización de la red, puede colocarlos en su propia red, configurar la máscara de red y broadcast de manera que sean las dos únicas máquinas en ella. Para mostrar las direcciones de máscara de red y broadcast, puede utilizar ipcalc, proporcionando la IP arch del firewire nic 10.66.66.1, y especificando ipcalc, debe crear una red de sólo dos hosts.

$ ipcalc -nb 10.66.66.1 -s 1
Address:   10.66.66.1

Netmask:   255.255.255.252 = 30
Network:   10.66.66.0/30
HostMin:   10.66.66.1
HostMax:   10.66.66.2
Broadcast: 10.66.66.3
Hosts/Net: 2                     Class A, Private Internet

Cargar configuración

Para probar cualquier configuración reinicie el ordenador, o como root, ejecute:

# rc.d restart network

Pruebe a hacer ping a su gateway, servidor DNS, proveedor de ISP y otros sitios de Internet, en ese orden, para detectar cualquier problema de conexión en el camino, como en este ejemplo:

$ ping -c 3 www.google.com

Ajustes adicionales

ifplugd para portátiles

ifplugd disponible en los repositorios oficiales es un demonio que configura automáticamente el dispositivo Ethernet, cuando un cable de red está enchufado y automáticamente se desconfigura si el cable se retira. Esto es útil en portátiles con los adaptadores de red integrados, ya que sólo se va a configurar la interfaz cuando un cable está realmente conectado. Otro utilidad es cuando sólo tiene que reiniciar la red, pero no desea reiniciar el equipo o utilizar la shell.

Por defecto, está configurado para trabajar para el dispositivo eth0. Esta y otras configuraciones, como demoras, se pueden establecer en /etc/ifplugd/ifplugd.conf.

Inicie el demonio ifplugd y añada ifplugd a la matriz DAEMONS para que se inicie automáticamente en el arranque.

Como alternativa, en systemd, habilitando net-auto-wired.service debe comenzar ifplugd en el arranque si tiene netcfg instalado, de lo contrario puede usar ifplugd@eth0.service.

Bonding o LAG

Necesitará netcfg disponible en los repositorios oficiales, así como el paquete netcfg-bondingAUR disponible en AUR.

Edite/cree los siguientes archivos:

/etc/network.d/bonded
CONNECTION="bonding"
 INTERFACE="bond0"
 SLAVES="eth0 eth1"
 IP="dhcp"
 DHCP_TIMEOUT=10
/etc/rc.conf
MODULES=(... bonding ...)
...
 interface=bond0 #comment other lines (address,netmask,gateway,...)
...
 NETWORKS=(... bonded ...)
...
 DAEMONS=(... net-profiles ...) #Replace "network".
Nota: Para cambiar la modalidad bonding (por defecto es round robin) para, por ejemplo, la agregación dinámica del enlace:

Cree /etc/modprobe.d/bonding.conf:

/etc/modprobe.d/bonding.conf
options bonding mode=4
options bonding miimon=100
Para obtener más información acerca de las diferentes políticas de bonding (y configuraciones de otros controladores), véase Linux Ethernet Bonding Driver HOWTO.

Para activar la nueva puerta de entrada, ejecute el modprobe bonding, detenga network e inicie el servicio net-profiles:

# modprobe bonding
# rc.d stop network
# rc.d start net-profiles

Para comprobar el estado y modalidad de bonding:

$ cat /proc/net/bonding/bond0

Aliasing de direcciones IP

El aliasing IP es el proceso de agregar más de una dirección IP a una interfaz de red. Con esto, un nodo en una red puede tener varias conexiones a una red, cada uno sirviendo a un propósito diferente.

Para utilizar los alias de IP a partir de netcfg, cambie los comandos POST_UP y PRE_DOWN en su perfil de red para configurar manualmente las direcciones IP adicionales. Vea esto para más detalles.

Ejemplo

Necesitará netcfg disponible en los repositorios oficiales.

Prepare la configuración:

/etc/network.d/mynetwork
CONNECTION='ethernet'
DESCRIPTION='Five different addresses on the same NIC.'
INTERFACE='eth0'
IP='static'
ADDR='192.168.1.10'
GATEWAY='192.168.1.1'
DNS=('192.168.1.1')
DOMAIN=
POST_UP='x=0; for i in 11 12 13 14; do ip addr add 192.168.1.$i/24 brd 192.168.1.255 dev eth0 label eth0:$((x++)); done'
PRE_DOWN='for i in 11 12 13 14; do ip addr del 192.168.1.$i/24 dev eth0; done'
/etc/rc.conf
NETWORKS=(mynetwork)

...

DAEMONS=(... net-profiles ...)

Cambio de direcciones MAC/hardware

Consulte MAC Address Spoofing.

Solución de problemas

Intercambiando ordenadores con cable modem

La mayoría de los ISPs domésticos estan configurados para reconocer solo una PC cliente por la dirección MAC de su interfaz de red. Una vez que el cable modem aprendió la dirección MAC de la primera PC que se comunica con el, no responderá a otra dirección MAC de ninguna manera. Entonces si cambias la PC por otra (o por un router), la nueva PC (o router) no funcionará con el cable modem, porque la nueva PC (o router) tiene una dirección MAC distinta a la anterior. Para resetear el cable modem y que este pueda reconocer la nueva PC (o router), debes apagarlo y volverlo a encender. Una vez que el modem se ha reiniciado y se ha conectado completamente (las luces de indicación encendidas), reinicia el nuevo PC (o router) para que haga una petición DHCP, o haz que lo haga manualmente.

El problema con el TCP Window Scaling

Los paquetes TCP contienen un valor "window" en sus cabeceras para indicar cuantos datos envió el otro host. Este valor es representado con solamente 16 bits, dado que el tamaño del "window" es de, como mucho, 64Kb. Los paquetes TCP son guardados en el cache por un tiempo (deben ser reordenados), y como la memoria era limitada, un host podía llenarla fácilmente.

En 1992, cuando se empezó a disponer de cada vez más memoria, se escribió RFC 1323 para mejorar la situación: Window Scaling. El valor "window", enviado en todos los paquetes, serán modificados por un factor Scale definido una vez, al inicio de la conexión.

Ese valor Scale de 8-bits permite al valor window ser 32 veces más grande que sus iniciales 64Kb.

Parece que algunos routers y firewalls dañados cambian el valor Scale a 0, lo que causa problemas entre los hosts.

El Kernel Linux 2.6.17 introdujo un nuevo esquema de calculación, generando valores Scale más altos, haciendo mas notable los problemas de los router y los firewalls dañados.

La conexión resultante, en el mejor de los casos, es muy lenta o núla.

¿Cómo diagnosticar este problema?

En algúnos casos no podrás usar conexiones TCP (HTTP, FTP, ...) para nada, y en otros no podrás comunicarte con algunos hosts (muy pocos).

Alerta: La salida de dmesg esta bien, los logs estan limpios y la salida de ifconfig es normal — entonces, en realidad todo esta bien.

Si no puedes acceder a ningún sitio, pero puedes hacer ping a algúnos hosts, hay posibilidades de que estes pasando por este problema: el ping usa el protocolo ICMP y no es afectado por los problemas TCP.

Podrías probar usando WireShark. Puede que veas comunicaciones ICMP y UDP bien realizadas, pero problemas con las conexiones TCP (solo con hosts extranjeros).

¿Cómo arreglarlo? (El método equivocado)

Para arreglarlo por el mal camino, puedes cambiar el valor tcp_rmem, donde se realiza la calculación del Scale Factor. Si bien debería funcionar para la mayoría de los hosts, no es seguro, especialmente para los que son muy distantes.

echo "4096 87380 174760" > /proc/sys/net/ipv4/tcp_rmem

O podrías remover alguno de tus módulos RAM.

¿Cómo arreglarlo? (El método correcto)

Simple: Deshabilita Window Scaling. Si bien el Window Scaling es una buena característica TCP, puede resultar mala, especialmente si no puedes reparar tu router dañado. Hay varias formas de deshabilitar Window Scaling, y parece que la mejor (la que funcionará en la mayoría de los kernels) es añadir las siguientes líneas al /etc/rc.local:

echo 0 > /proc/sys/net/ipv4/tcp_window_scaling

¿Cómo arreglarlo? (El método óptimo)

Este problema es causado por un router/firewall dañado. Cámbialos.

Información adicional sobre este problema

Esta sección se basa en un artículo de LWN TCP window scaling and broken router (ingles) y un artículo de Kernel Trap: Window Scaling on the Internet (en ingles).

También hay varios temas similares en LKML.


Problema con Realtek: sin Link / WOL

Usuarios de una NIC (tarjetas / y onboard) basada en Realtek 8168 8169 8101 8111 pueden pasar por un problema donde NIC parece estar deshabilitado desde el boot y la luz Link no se enciende. Esto ocurre generalmente en un sistema dual boot donde esta instalado un Windows. Parece que la causa es usar los drivers oficiales de Realtek (de después de Mayo del 2007) en Windows. Estos nuevos drivers deshabilitan la característica Wake-On-Lan, deshabilitando el NIC al momento de apagar Windows, y dejándolo deshabilitado hasta el próximo arranque. Sabrás si tienes este problema si ves que la luz del Link permanece apagada hasta que carga Windows. Lo normal sería que la luz de Link este siempre encendida mientras el sistema este funcionando. Este problema también afectará a otros sistemas operativos con drivers no actualizados. Aquí, algunas maneras de arreglar este problema:

Método 1 - Restaurar el controlador de Windows

Puedes volver a la versión brindada por Microsoft del driver NIC (si esta disponible), o volver a la versión anterior/instalar un driver oficial Realtek anterior a Mayo del 2007 (tal vez lo encuentre en el CD que le dieron con su hardware).

Método 2 - Habilitar WOL en el controlador de Windows

Probablemente la mejor solución (y la más rápida) es cambiar esta configuración en el driver de Windows. De esta forma se solucionaría para todos los SOs. En Windows, en el administrador de dispositivos, encuentra tu adaptador Realtek y dale doble click. En la pestaña "avanzado" habilita "wake-on-lan después de apagar".

Método 3 - Nuevo driver de Realtek para Linux

Los drivers nuevos de estas tarjetas para Linux pueden encontrarse en el sitio de Realtek (no probado aunque se cree que también resuelve el problema).

Method 4 - Habilitar LAN Boot ROM en la BIOS/CMOS

Parece que el ajuste Integrated Peripherals --> Onboard LAN Boot ROM --> Enabled en BIOS/CMOS del chip Realtek reactiva LAN en el sistema al reiniciar, a pesar de que el controlador de Windows lo desactive en el apagado del sistema operativo.
Esto fue probado con éxito varias veces con la placa base GIGABYTE GA-G31M-ES2L con la versión F8 liberada de la BIOS el. YMMV.