Configurer le réseau
Détection automatique du réseau
Il est possible que la connexion au réseau soit déjà opérationnelle.
Si le système est connecté à un réseau Ethernet ayant un serveur DHCP, il est très probable que la connexion ait déjà été configurée automatiquement. Si tel est le cas, les nombreuses commandes réseau incluses sur le média d'installation, telles que ssh, scp, ping, irssi, wget, et links, fonctionneront immédiatement.
Utiliser DHCP
DHCP (Dynamic Host Configuration Protocol - Protocole de Configuration Dynamique des Hôtes) rend possible le fait de recevoir automatiquement des informations de mise en réseau (adresse IP, masque de sous-réseau, adresse de diffusion, passerelle, serveurs de noms, etc.). Cela ne fonctionne que si un serveur DHCP existe dans le réseau (ou si le fournisseur d'accès internet fournit un service DHCP). Pour qu'une interface réseau reçoive automatiquement ces informations, utilisez le daemon dhcpcd :
DHCP requires that a server be running on the same Layer 2 (Ethernet) segment as the client requesting a lease. DHCP is often used on RFC1918 (private) networks, but is also used to acquire public IP information from ISPs.
Official Gentoo boot media runs dhcpcd automatically at startup. This behavior can be disabled by adding the
nodhcp
argument to the boot media kernel commandline.If it is not already running, dhcpcd can be started on enp1s0 with:
root #
dhcpcd eth0
Certains administrateurs de réseau exigent que le nom d'hôte et le nom de domaine fourni par le serveur DHCP soient utilisés par le système. Dans ce cas, utilisez :
root #
dhcpcd -HD eth0
To stop dhcpcd, -x can be used:
root #
dhcpcd -x
sending signal Term to pid 10831 waiting for pid 10831 to exit
Dhcpcd usage
Tester le réseau
A properly configured default route is a critical component of Internet connectivity, route configuration can be checked with:
root #
ip route
default via 192.168.0.1 dev enp1s0
If no default route is defined, Internet connectivity is unavailable, and additional configuration is required.
Basic internet connectivity can be confirmed with a ping:
root #
ping -c 3 1.1.1.1
It's helpful to start by pinging a known IP address instead of a hostname. This can isolate DNS issues from basic Internet connectivity issues.
Outbound HTTPS access and DNS resolution can be confirmed with:
root #
curl --location gentoo.org --output /dev/null
Si tout cela fonctionne, alors le reste de ce chapitre peut être ignoré pour passer directement à l'étape suivante de la procédure d'installation (Préparer les disques).
If curl reports an error, but Internet-bound pings work, DNS may need configuration.
If Internet connectivity has not been established, first interface information should be verified, then:
- net-setup can be used to assist in network configuration.
- Application specific configuration may be required.
- Manual network configuration can be attempted.
Déterminer les noms des interfaces
If networking doesn't work out of the box, additional steps must be taken to enable Internet connectivity. Generally, the first step is to enumerate host network interfaces.
La commande ip peut être utilisée comme alternative à ifconfig pour déterminer les noms des interfaces. L'exemple suivant montre le résultat de la commande ip addr (d'un système différent que celui des exemples précédents) :
The link argument can be used to display network interface links:
root #
ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 4: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff
The address argument can be used to query device address information:
root #
ip addr
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether e8:40:f2:ac:25:7a brd ff:ff:ff:ff:ff:ff inet 10.0.20.77/22 brd 10.0.23.255 scope global eno1 valid_lft forever preferred_lft forever inet6 fe80::ea40:f2ff:feac:257a/64 scope link valid_lft forever preferred_lft forever
The output of this command contains information for each network interface on the system. Entries begin with the device index, followed by the device name: enp1s0.
Si aucune interface n'est affichée lors de l'utilisation de la commande ifconfig, essayerz d'ajouter l'option
-a
. Cette option force l'utilitaire à afficher toutes les interfaces réseau détectées par le système quelque soit leur état d'activation. Si ifconfig -a ne produit aucun résultat alors le matériel est défectueux ou les pilotes de l'interface réseau n'ont pas été chargés dans le noyau. Ces deux cas ne sont pas couverts dans ce guide. Contactez le support #gentoo (webchat).Dans le reste de ce document, il sera assumé que l'interface réseau s'appelle eth0.
Suite à l'évolution vers des noms d'interfaces réseau prévisibles (EN), le nom des interfaces peut différer de l'ancien système de nommage en eth0. Les supports d'installation peuvent afficher des noms d'interface tels que eno0, ens1, ou encore enp5s0. Cherchez l'interface ayant une IP adresse liée au réseau local dans le résultat de la commande ifconfig.
Optional: Application specific configuration
The following methods are not generally required, but may be helpful in situations where additional configuration is required for Internet connectivity.
Facultatif : Configurer tous les proxys
Si l'Internet est accessible via un proxy, il est nécessaire de définir des informations de proxy lors de l'installation. Il est très facile de définir un proxy : il suffit de définir une variable qui contient les informations du serveur proxy.
Certain text-mode web browsers such as links can also make use of environment variables that define web proxy settings; in particular for the HTTPS access it also will require the https_proxy environment variable to be defined. While Portage will be influenced without passing extra run time parameters during invocation, links will require proxy settings to be set.
Dans la plupart des cas, il suffit de définir les variables à l'aide du nom d'hôte du serveur. Comme exemple, nous supposons que le proxy est appelé proxy.gentoo.org et le port 8080.
The
#
symbol in the following commands is a comment. It has been added for clarity only and does not need to be typed when entering the commands.Pour configurer un proxy HTTP (pour le trafic HTTP et HTTPS) :
root #
export http_proxy="http://proxy.gentoo.org:8080"
Si le serveur proxy requiert un nom d'utilisateur et un mot de passe, utilisez la syntaxe suivante pour définir la variable :
http://username:password@proxy.gentoo.org:8080
Start links using the following parameters for proxy support:
user $
links -http-proxy ${http_proxy} -https-proxy ${https_proxy}
Pour configurer un proxy FTP :
root #
export ftp_proxy="ftp://proxy.gentoo.org:8080"
Start links using the following parameter for a FTP proxy:
user $
links -ftp-proxy ${ftp_proxy}
Pour configurer un proxy RSYNC :
root #
export RSYNC_PROXY="proxy.gentoo.org:8080"
Alternative : utilisation de PPP
If PPPoE is required for Internet access, the Gentoo boot media includes the pppoe-setup script to simplify ppp configuration.
During setup, pppoe-setup will ask for:
- The name of the Ethernet interface connected to the ADSL modem.
- The PPPoE username and password.
- DNS server IPs.
- Whether or not a firewall is needed.
root #
pppoe-setup
root #
pppoe-start
In the event of failure, credentials in /etc/ppp/pap-secrets or /etc/ppp/chap-secrets should be verified. If credentials are correct, PPPoE Ethernet interface selection should be checked.
Alternative : utilisation de PPTP
Si le support PPTP est nécessaire, utilisez la commande pptpclient qui est fournie par le CD d'installation. Mais d'abord, assurez-vous que la configuration soit correcte. Modifiez le fichier /etc/ppp/pap-secrets ou /etc/ppp/chap-secrets pour qu'il contienne le bon nom d'utilisateur et mot de passe :
Edit /etc/ppp/pap-secrets or /etc/ppp/chap-secrets so it contains the correct username/password combination:
root #
nano -w /etc/ppp/chap-secrets
Puis peaufinez de/etc/ppp/options.pptp si nécessaire :
root #
nano -w /etc/ppp/options.pptp
Quand tout cela est fait, il suffit d'exécuter pptp (avec les options qui n'ont pu être définies dans options.pptp) pour se connecter au serveur :
root #
pptp <IPv4 du serveur>
Configurer l'accès sans fil
Do not use WEP unless it is the only option. WEP provides essentially no security over an open network.
La prise en charge de la commande iwconfig peut être spécifique à l'architecture. Si la commande n'est pas disponible, voir si le paquet net-wireless/iw est disponible pour l'architecture actuelle. La commande iw sera indisponible tant que le paquet net-wireless/iw n'aura pas été installé.
Lors de l'utilisation d'une carte réseau sans fil (802.11), les paramètres sans fil doivent être configurés avant d'aller plus loin. Pour voir les paramètres sans fil de la carte, on peut utiliser la commande iw. L'exécution de iw pourrait donner quelque chose qui ressemble à ceci :
root #
iw dev wlp9s0 info
Interface wlp9s0 ifindex 3 wdev 0x1 addr 00:00:00:00:00:00 type managed wiphy 0 channel 11 (2462 MHz), width: 20 MHz (no HT), center1: 2462 MHz txpower 30.00 dBm
Pour vérifier si une connexion active existe :
root #
iw dev wlp9s0 link
Not connected.
ou
root #
iw dev wlp9s0 link
Connected to 00:00:00:00:00:00 (on wlp9s0) SSID: GentooNode freq: 2462 RX: 3279 bytes (25 packets) TX: 1049 bytes (7 packets) signal: -23 dBm tx bitrate: 1.0 MBit/s
Certaines cartes sans fil peuvent avoir un nom de périphérique wlan0 ou ra0 au lieu de wlp9s0. Exécutez ip link pour déterminer le nom correct du périphérique.
Pour la plupart des utilisateurs, il y a seulement deux paramètres importants pour se connecter, l'ESSID (ou nom du réseau sans fil) et, accessoirement, la clé WEP.
- S'assurer d'abord que l'interface soit activée :
root #
ip link set dev wlp9s0 up
- Pour se connecter à un réseau public portant le nom GentooNode :
root #
iw dev wlp9s0 connect -w GentooNode
- Pour se connecter avec une clé WEP hexadécimale, préfixez la clé avec
d:
:
root #
iw dev wlp9s0 connect -w GentooNode key 0:d:1234123412341234abcd
- Pour se connecter avec une clé WEP ASCII :
root #
iw dev wlp9s0 connect -w GentooNode key 0:<mot-de-passe>
Si le réseau sans fil est configuré avec WPA ou WPA2, alors wpa_supplicant doit être utilisé. Pour plus d'informations sur la configuration des réseaux sans fil sous Gentoo Linux, lire le chapitre sur les réseaux sans fil du manuel de Gentoo.
Confirmez les paramètres sans fil en utilisant la commande iw dev wlp9s0 link. Une fois que le réseau sans fil fonctionne, poursuivre avec la configuration des options réseau au niveau de l'adresse IP comme décrit dans la section suivante (Comprendre la terminologie réseau) ou utilisez l'outil net-setup comme décrit précédemment.
Configuration automatique du réseau
In cases where automatic network configuration is unsuccessful, the Gentoo boot media provides scripts to aid in network configuration. net-setup can be used to configure wireless network information and static IPs.
root #
net-setup eth0
L'exécution de la commande net-setup posera quelques questions au sujet de l'environnement réseau. À la fin, la connexion réseau devrait fonctionner. Testez la connexion réseau comme indiqué précédemment. Si les tests sont positifs, félicitations ! Ignorez le reste de cette section et continuez avec Préparer les disques.
Network status should be tested after any configuration steps are taken. In the event that configuration scripts do not work, manual network configuration is required.
Comprendre la terminologie réseau
If all of the above fails, the network must be configured manually. This is not particularly difficult, but should be done with consideration. This section serves to clarify terminology and introduce users to basic networking concepts pertaining to manually configuring an Internet connection.
Some CPE (Carrier Provided Equipment) combines the functions of a router, access point, modem, DHCP server, and DNS server into one unit. It's important to differentiate the functions of a device from the physical appliance.
Interfaces and addresses
Network interfaces are logical representations of network devices. An interface needs an address to communicate with other devices on the network. While only a single address is required, multiple addresses can be assigned to a single interface. This is especially useful for dual stack (IPv4 + IPv6) configurations.
For consistency, this primer will assume the interface enp1s0 will be using the address 192.168.0.2.
IP addresses can be set arbitrarily. As a result, it's possible for multiple devices to use the same IP address, resulting in an address conflict. Address conflicts should be avoided by using DHCP or SLAAC.
IPv6 typically uses StateLess Address AutoConfiguration (SLAAC) for address configuration. In most cases, manually setting IPv6 addresses is a bad practice. If a specific address suffix is preferred, interface identification tokens can be used.
Networks and CIDR
Once an address is chosen, how does a device know how to talk to other devices?
IP addresses are associated with networks. IP networks are contiguous logical ranges of addresses.
Classless Inter-Domain Routing or CIDR notation is used to distinguish network sizes.
- The CIDR value, often notated starting with a /, represents the size of the network.
- The formula 2 ^ (32 - CIDR) can be used to calculate network size.
- Once network size is calculated, usable node count must be reduced by 2.
- The first IP in a network is the Network address, and the last is typically the Broadcast address. These addresses are special and cannot be used by normal hosts.
The most common CIDR values are /24, and /32, representing 254 nodes and a single node respectively.
A CIDR of /24 is the de-facto default network size. This corresponds to a subnet mask of 255.255.255.0, where the last 8 bits are reserved for IP addresses for nodes on a network.
The notation: 192.168.0.2/24 can be interpreted as:
- The address 192.168.0.2
- On the network 192.168.0.0
- With a size of 254 (2 ^ (32 - 24) - 2)
- Usable IPs are in the range 192.168.0.1 - 192.168.0.254
- With a broadcast address of 192.168.0.255
- In most cases, the last address on a network is used as the broadcast address, but this can be changed.
Using this configuration, a device should be able to communicate with any host on the same network (192.168.0.0).
The Internet
Once a device is on a network, how does it know how to talk to devices on the Internet?
To communicate with devices outside of local networks, routing must be used. A router is simply a network device that forwards traffic for other devices. The term default route or gateway typically refers to whatever device on the current network is used for external network access.
It's a standard practice to make the gateway the first or last IP on a network.
If an Internet-connected router is available at 192.168.0.1, it can be used as the default route, granting Internet access.
To summarize:
- Interfaces must be configured with an address and network information, such as the CIDR value.
- Local network access is used to access a router on the same network.
- The default route is configured, so traffic destined for external networks is forwarded to the gateway, providing Internet access.
The Domain Name System
Remembering IPs is hard. The Domain Name System was created to allow mapping between Domain Names and IP addresses.
Linux systems use /etc/resolv.conf to define nameservers to be used for DNS resolution.
Many routers can also function as a DNS server, and using a local DNS server can augment privacy and speed up queries through caching.
Many ISPs run a DNS server that is generally advertised to the gateway over DHCP. Using a local DNS server tends to improve query latency, but most public DNS servers will return the same results, so server usage is largely based on preference.
Configuration manuelle du réseau
Interface address configuration
When manually configuring IP addresses, the local network topology must be considered. IP addresses can be set arbitrarily; conflicts may cause network disruption.
To configure enp1s0 with the address 192.168.0.2 and CIDR /24:
root #
ip address add 192.168.0.2/24 dev enp1s0
The start of this command can be shortened to ip a.
Default route configuration
Configuring address and network information for an interface will configure link routes, allowing communication with that network segment:
root #
ip route
192.168.0.0/24 dev enp1s0 proto kernel scope link src 192.168.0.2
This command can be shortened to ip r.
The default route can be set to 192.168.0.1 with:
root #
ip route add default via 192.168.0.1
DNS configuration
Nameserver info is typically acquired using DHCP, but can be set manually by adding nameserver
entries to /etc/resolv.conf.
If dhcpcd is running, changes to /etc/resolv.conf will not persist. Status can be checked with
ps x | grep dhcpcd
.nano is included in Gentoo boot media and can be used to edit /etc/resolv.conf with:
root #
nano -w /etc/resolv.conf
Lines containing the keyword nameserver
followed by a DNS server IP address are queried in order of definition:
nameserver 9.9.9.9
nameserver 149.112.112.112
nameserver 1.1.1.1
nameserver 1.0.0.1
DNS status can be checked by pinging a domain name:
root #
ping -c 3 gentoo.org
Once connectivity has been verified, continue with Preparing the disks.