Raspberry/Ethernet filaire

De WikiOpenTruc
Aller à : navigation, rechercher

PC<->RPI direct (sans routeur) - via câble ethernet

ethernet filaire pour plusieurs raisons possibles, mais surtout la vitesse (par rapport à une connection wifi)

On est obligé de mettre un peu les mains dans le cambouis. Car, du moins sur des machines vierges, certains paramètres ne sont tout simplement pas spécifiés. Par exemple, les paramètres du connecteur physique RJ45 (eth0) n'ont pas du tout été alloués. Donc c'est à nous, soit de les fixer en dur, ou à défaut de demander qu'ils soient instanciés automatiquement.

  • a priori, eth0 désigne le connecteur RJ45 physique. En tous cas, sur mes machines
  • sur mon PC, eth1 désigne visiblement la connection USB avec le routeur


Coté PC

Compléter /etc/network/interfaces avec les 2 lignes.

allow-hotplug eth0
iface eth0 inet dhcp

devrait (?) lancer le service DHCP

ligne 1 : autoriser le branchement/débranchement à chaud
ligne 2 : l'adresse IP de eth0 sera attribuée par DHCP (ie dynamiquement) ... ce qui suppose qu'un DHCP tourne quelque part.

(Sur une distro Debian de base, et sur une Raspbian, il n'y a aucun paquet qui s'occupe de DHCP installé ni déployé).

Si cette manip ne marche pas, il faudra essayer d'allouer une IP manuellement.

J'ai du relancer le PC pour que cette modif apparaisse, /sbin/ifconfig eth0 pour vérifier. En l'occurence, ça dit que eth0 s'est vu attribuer une adresse inet6.

Cette modif toute seule ne suffit pas.


Coté Raspi

Le fichier /etc/network/interfaces doit aussi être complété avec quelques lignes. Soit les mêmes que coté PC.

Soit, si ça ne marche pas, on essaiera une paramétrisation manuelle :

iface eth0 inet static
address 192.168.1.21
netmask 255.255.255.0
network 192.168.1.0
gateway 192.168.1.22

Sur une Raspbian toute neuve, le fichier /etc/network/interfaces contient une seule ligne opérationnelle. Et qui ne concerne pas eth0.

Pour une affectation d'IP manuelle, plusieurs articles mentionnent l'emploi du fichier /boot/cmdline.txt pour cela. Mais bon, cette manip ne me plaît pas trop.


Essai 13-01-2018

un RPI 3W sur lequel je me connectais déjà très bien en wifi par ssh

  • le nom de ce raspberry est xxxx09 , comme indiqué dans /etc/hostname
  • un répertoire /home/pi comme il faut est bien présent (ie l'user pi existe bien)
  • c'est le fichier SETTINGS/wpa_supplicant.conf qui contient le SSID et le mdp du routeur auquel se connecter
  • ... mais le répertoire boot ne contient pas de fichier ssh ? (alors que plusieurs sites prétendent que cela est nécessaire pour enabler ssh au démarrage ?)
  • et le fichier /etc/network/interfaces contient :
# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

autant dire aucun paramétrage

Le comportement par défaut du raspberry est d'attendre qu'un service DHCP lui affecte une IP. a priori, c'est le cas quand on connecte le raspberry sur un routeur, puisque c'est l'un des boulots basiques d'un routeur de faire tourner un service DHCP.

Néanmoins, ceci n'est pas forcément le cas d'un PC basique, qui n'a, par défaut, aucune raison d'avoir un service DHCP actif.

Compléter /etc/network/interfaces coté PC avec les 2 lignes.

allow-hotplug eth0
iface eth0 inet dhcp

devrait (?) lancer le service DHCP.

... mais, tel que, ça ne marche pas.

Néanmoins, indépendamment du succès de l'opération ou pas, on peut aussi se dire que d'employer l'unique RJ45 d'un PC pour y connecter un unique bidule (raspberry ou autre) ... c'est pas super efficace.


Essai 14-01-2018

Configuration certainement pas optimale, mais comme ça fonctionne, je le note :

  • Compléter /etc/network/interfaces coté PC avec les 2 lignes.
allow-hotplug eth0
iface eth0 inet dhcp

... mais il semble que cela n'ait rien à voir avec le schmilblick

  • branchement du Raspi (xxxx09) sur le switch via RJ45
  • PC sous Debian Stretch, et paramètres réseau de PCI ethernet :
    • IPv4 | Adresses = réseau local seulement
    • DNS et Routes décochés
  • en l'état, la connection PCI ethernet reste active (ce qui n'est pas le cas avec d'autres paramétrages)
  • c'est un coup de ping xxxx09.local qui a dénoncé l'IP du raspi,
  • nmap -sn IPduPCIethernet/24 a été infructueux, car l'IP du raspi est en dehors de la plage
  • connection par ssh opérationnelle
  • je peux relier le raspi à n'importe quel port du routeur, il reste joignable et garde la même IP
  • je me dis que, en l'état, sans doute ce raspi n'a pas de connection vers internet, ce que me confirme
# ping google.com
ping: google.com: Échec temporaire dans la résolution du nom


Variantes avec switch

  • 1 : IPv4 | Adresses | Automatique (DHCP) -> connection PCI Ethernet stable, ssh ok, mais toujours pas d'internet
  • 2 : IPv4 | Adresses | Automatique (DHCP) + DNS coché -> connection PCI Ethernet stable, ssh ok, mais toujours pas d'internet
  • 3 : IPv4 | Adresses | Automatique (DHCP) + DNS coché + Routes coché -> connection PCI Ethernet stable, ssh ok, mais toujours pas d'internet
  • 4 : IPv4 | Adresses | Automatique (DHCP) + DNS coché + Routes coché + /etc/network/interfaces originel -> connection PCI Ethernet stable, ssh ok, mais toujours pas d'internet


  • 5 : 4 + connection directe PC<->RPI via RJ45 -> ping xxxx09 ou ping xxxx09.local ne retrouvent pas le raspi, et la connection n'est pas stable ... le switch apporte bien quelque chose



Variantes avec routeur WRT54GC

Déjà, il faut relier le PC sur une prise RJ45 banale (ie pas celle dédiée à l'entrée internet)

Souci 1 : l'IP par défaut est la même que mon routeur HUAWEI actuel, donc on anticipe des soucis. Je règle (a priori) cela en modifiant l'IP de ce routeur WRT54GC.

Souci 2 : même en ayant changé l'IP du routeur WRT54GC, les connections internet essaient visiblement de s'établir via icelui (et n'aboutissent pas, car ce routeur n'a pas de liaison internet). Je présume que c'est du :

  • au fait qu'un tel routeur est "trop" futé par rapport à un switch passif. Il peut faire plus de trucs, et donc il y a des tentatives
  • que, d'une manière ou d'une autre, la priorité pour se connecter à internet est donnée via le port RJ45 (plutôt que USB), sans doute car mon PC est ancien (Dell4700)

... mais cela peut peut-être se paramétrer qq part ?