it-swarm.com.de

Raspberry Pi über Ethernet an einen Laptop ohne Router anschließen?

Ich arbeite am Ballonprojekt mit einem Raspberry Pi. Wenn wir den Raspberry Pi möglicherweise wiederherstellen, wird er höchstwahrscheinlich in einer ländlichen Umgebung sein, und ich möchte den Pi an diesem Punkt sicher ausschalten. Ohne Router oder Netzwerk in der Nähe habe ich mich gefragt, ob es eine Möglichkeit gibt, einen Raspberry Pi mit einem Ethernet-Kabel direkt an einen Laptop anzuschließen.

90
user2170780

Es ist eine Lösung für Ubuntu (die Idee funktioniert auch für Windows oder Mac), die ich gerade ausprobiert habe und es wirkt wie ein Zauber.

Material

  1. ein Cross-Over-Ethernet-Kabel (der Name ist schick, aber es ist nur ein normales Ethernet-Kabel)
  2. ein Laptop (Ubuntu) 
  3. ein Himbeer-Pi (ich habe den Pi2)

Voraussetzungen auf Ihrem Ubuntu

  1. Installieren Sie den Netzwerk-Manager 

    $Sudo apt-get install network-manager

  2. Installieren Sie nmap

    $Sudo apt-get install nmap

Bearbeiten Sie die Kabelverbindung auf Ihrem Laptop (Ubuntu).

  1. Ändern Sie die IpV4-Einstellungen in "Für andere Computer freigeben". 
  2. Speichern Sie die Einstellung
  3. Starten Sie Ihren Laptop neu

Share WiFi-Verbindung Ihres Laptops über Ethernet-Crossover-Kabel

  1. Verbinden Sie Ihr RPi über das Ethernet-Kabel mit Ihrem Laptop 

  2. Schlagen Sie die Broadcast-Adresse der Ethernet-Verbindung (Laptop) nach. 

$/sbin/ifconfig eth1 | grep "Bcast" | awk -F: '{print $3}' | awk '{print $1}' 10.42.0.255

  1. Verwenden Sie diese Adresse, um die IP-Adresse Ihres RPi herauszufinden. In meinem Fall ist dies 10.42.0.96, da 10.42.0.1 mein Laptop ist

    $nmap -n -sP 10.42.0.255/24

  Starting Nmap 6.40 ( http://nmap.org ) at 2016-02-20 23:07 CET
  Nmap scan report for 10.42.0.1
  Host is up (0.00031s latency).
  Nmap scan report for 10.42.0.96
  Host is up (0.0023s latency).
  Nmap done: 256 IP addresses (2 hosts up) scanned in 2.71 seconds
  1. Melden Sie sich von Ihrem Laptop aus bei Ihrem RPi an (-Y mit X-Weiterleitung). 

    $ssh -Y [email protected] 

  2. Siehe da! Jetzt ist Ihr RPi mit Ihrem Laptop verbunden und das WLAN kann gemeinsam genutzt werden.

    [email protected] ~ $

Anzeige und Tastatur Ihres Laptops mit RPi teilen

  1. Installieren Sie vncserver auf dem Raspberry Pi 

    $ Sudo apt-get update

    $ Sudo apt-get install tightvncserver 

  2. Installieren Sie vncviewer auf Ihrem Laptop, indem Sie RealVNC herunterladen (es unterstützt mehrere Plattformen) http://www.realvnc.com/download/vnc/

  3. Um vom VNC-Server <-> VNC-Viewer kopieren und einfügen zu können, müssen Sie Autocutsel auf Ihrem RPi installieren.

$Sudo apt-get install autocutsel

Wenn diese Site nicht funktioniert, versuchen Sie, das .deb-Objekt direkt von einer Spiegel-Site herunterzuladen, z. B. . mirror.hmc.edu/debian/pool/main/a/autocutsel/autocutsel_0.10.0-1_armhf.deb
und installieren Sie es

$Sudo dpkg -i autocutsel_0.10.0-1_armhf.deb

  1. Starten Sie vncserver auf Ihrem RPi (Sie müssen vncserver nach der Installation von autocutsel neu starten, Sie können $vncserver -kill :1 ausgeben.)

    $vncserver :1

  2. Fügen Sie autocutsel -fork zu /home/pi/.vnc/xstartup hinzu 

 #!/bin/sh
 xrdb $HOME/.Xresources xsetroot -solid grey 
 autocutsel -fork
 #x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
 #x-window-manager &
 # Fix to make GNOME work 
 export XKL_XMODMAP_DISABLE=1 
 /etc/X11/Xsession
  1. Starten Sie vncviewer auf Ihrem Laptop

    $vncviewer

  2. Ein vncviewer-Fenster öffnet sich und gibt die IP-Adresse Ihres RPi (von Ihrem Laptop angegeben) gefolgt von Port 1, dem VNC-Server, ein. Zum Beispiel: 10.42.0.96:1 in meinem Fall. 

  3. Verbinden Sie es mit dem auf Ihrem RPi gehosteten vncserver, indem Sie ein Kennwort eingeben (selbst ein Kennwort einrichten).

    12. Jetzt können Sie den Desktop des RPi auf Ihrem Laptop sehen und ich habe meinen Browser geöffnet, um zu zeigen, dass die gemeinsam genutzte WLAN-Verbindung ebenfalls funktioniert.

Siehe Raspberry Pi-Desktop auf Ihrem Ubuntu

71
Nicole Finnie

Sie benötigen kein Crossover-Kabel. Sie können ein normales Netzwerkkabel verwenden, da der Raspberry Pi LAN-Chip intelligent genug ist, um sich selbst für direkte Netzwerkverbindungen neu zu konfigurieren

21
Vas

Kein Router + kein Bildschirm + normales Ethernet-Kabel + RPI 2 + Raspbian Lite 2018-11-13 + Ubuntu 18.10

Zuerst müssen wir den SSH-Server auf dem Pi aktivieren, der aus Sicherheitsgründen standardmäßig deaktiviert ist.

Wenn Sie bereits über eine Nicht-SSH-Methode wie Bildschirm + Tastatur oder UART (siehe unten) eine Shell auf dem Pi haben, führen Sie einfach Folgendes aus:

Sudo systemctl enable ssh
Sudo service sshd start

wie erläutert unter: https://raspberrypi.stackexchange.com/questions/58478/ssh-not-working-with-fresh-install Dies bleibt auch bei Booten erhalten.

Ansonsten legen Sie die SD-Karte in Ihren Host ein und erstellen eine magische leere Datei mit dem Namen ssh-Datei in der boot/-Partition.

Auf Ubuntu-Hosts wird es automatisch gemountet und Sie können Folgendes tun:

Sudo touch /media/$USER/boot/ssh

die Sie mit bestätigen können:

lsblk

was beinhaltet:

mmcblk0     179:0    0  14.4G  0 disk
├─mmcblk0p1 179:1    0  43.9M  0 part /media/ciro/boot
└─mmcblk0p2 179:2    0  14.4G  0 part /media/ciro/rootfs

Wenn Sie den SSHD-Dämon nicht auf dem Pi aktivieren, schlägt die SSH-Verbindung fehl mit:

ssh: connect to Host 10.42.0.160 port 22: Connection refused

wenn wir es später versuchen.

Nach dem Aktivieren des SSH-Servers

Starten Sie anschließend das Pi und verbinden Sie ein Ethernet-Kabel von Ihrem Laptop direkt mit dem Pi:

enter image description here

Auf Ubuntu 17.04, um diesen Fehler wie erwähnt in dieser Antwort zu umgehen, müssen Sie zuerst:

Sudo apt-get install dnsmasq-base

Öffnen Sie auf dem Host den Netzwerkmanager:

nm-connection-editor

Und gehen:

  1. + sign (Neue Verbindung hinzufügen)
  2. Ethernet
  3. Erstellen
  4. IPv4-Einstellungen
  5. Methode: Für andere Computer freigegeben
  6. Legen Sie einen guten Namen dafür fest
  7. Sparen

enter image description here

Finden Sie die IP des Pi auf dem Host:

cat /var/lib/misc/dnsmasq.leases

gibt etwas aus wie:

1532204957 b8:27:eb:0c:1f:69 10.42.0.160 raspberrypi 01:b8:27:eb:0c:1f:69

10.42.0.160 ist die IP, dann wie üblich:

ssh [email protected]

Ich habe auch folgendes in meinem .bashrc:

piip() ( cat /var/lib/misc/dnsmasq.leases | cut -d ' ' -f 3; )
pissh() ( sshpass -p raspberry ssh "[email protected]$(piip)"; )

Beachten Sie im Inneren des Pi, dass er normalerweise über die anderen Schnittstellen Ihres Hosts auf das Internet zugreifen kann:

ping google.com

Auf meinem Laptop beispielsweise nimmt der Pi das Ethernet auf, der Host ist jedoch auch über WLAN mit dem Internet verbunden.

Das Crossover-Kabel ist nicht erforderlich, wenn die Host-Netzwerkkarte Auto MDI-X unterstützt. Dies ist der Fall für die neueste Hardware, z. B. das 2012 von Lenovo getestete T430, mit dem welches eine "Intel® 82579LM Gigabit Network Connection" getestet hat, die Unterstützung von Dokumenten für Auto MDI-X .

Jetzt können Sie auch:

UART serieller USB-Konverter

Dies ist eine Alternative zu SSH, wenn Sie nur eine Shell auf dem Pi erhalten möchten: https://en.wikipedia.org/wiki/Serial_port

Hierbei wird kein SSH oder Netzwerk verwendet, sondern die ältere, einfachere, direktere, zuverlässigere serielle Schnittstelle mit geringerer Bandbreite und geringerem Abstand. Mit dieser Methode hat das Pi keinen Zugang zum Internet.

Desktop-Computer haben immer noch eine serielle Schnittstelle, die Sie direkt mit dem Pi verbinden können. Diese sind jedoch in den meisten Laptops verborgen. Daher müssen Sie einen günstigen USB-Adapter kaufen. Hier habe ich verwendet: https://www.Amazon.co.uk/gp/product/B072K3Z3TL Siehe auch: https://unix.stackexchange.com/questions/307390/what.) -ist der Unterschied zwischen-ttys0-ttyusb0-und-ttyama0-in-linux/367882 # 367882

Stecken Sie zuerst die SD-Karte in den Host und bearbeiten Sie die config.txt-Datei in der ersten Partition, um Folgendes hinzuzufügen:

enable_uart=1

wie erläutert: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=141195

Diese erste Partition enthält den Bootloader, seine Konfigurationsdateien und den (Linux/Ihren) Kernel, wobei config.txt einer davon ist. Die zweite Partition enthält das eigentliche Linux-Root-Dateisystem.

Verbinden Sie jetzt Ihren Computer mit dem Pi als:

enter image description here

Sie müssen nur 3 Kabel anschließen:

  • Masse an Masse
  • Tx an Pi an Rx an der USB-zu-Seriell-Schnittstelle
  • Rx an Pi zu Tx an USB-serieller Schnittstelle

Dies ist auch dokumentiert unter: https://www.raspberrypi.org/documentation/usage/gpio/README.md

Achten Sie darauf, den Ground nicht mit dem 5V zu verbinden, da ich bereits 2 UART auf USB-Chips gebrannt habe!

Sie müssen die 5V überhaupt nicht an die 5V anschließen. Ich denke, Sie können Ihren Pi auf diese Weise mit Strom versorgen, aber ich habe gelesen, dass dies eine schlechte Idee ist. Verwenden Sie einfach die übliche USB-Stromquelle.

Schließen Sie schließlich die USB-Seite des Steckers an Ihren Host-Computer an und erhalten Sie eine Shell mit:

Sudo apt install screen
Sudo usermod -a -G dialout $USER
screen /dev/ttyUSB0 115200

Beenden Sie mit Ctrl-A \.

Hier ist ein Video von Adafruit, das es zeigt: https://www.youtube.com/watch?v=zUBPeoLW16Q

Ich habe es gerade erfolgreich implementiert und getestet. Gleiche Situation bei meinem Projekt, ich möchte eine Verbindung zu einem Raspberry Pi ohne Router oder WLAN herstellen. Nur ein einfaches Ethernet-Kabel.

Verwenden Sie das Programm ssh PuTTY, und geben Sie die Adresse als ein

raspberrypi.local

Melden Sie sich an und Sie können auf das Terminal zugreifen.

Wenn der VNC-Server eingerichtet ist, verwenden Sie alternativ den VNC-Server und legen Sie ihn ab

raspberrypi.local: 1

In der Serveradresse. Geben Sie Ihr VNC-Server-Passwort ein, und Sie haben jetzt GUI-Zugriff, um das zu tun, was Sie möchten. 

Im Mai wurden Skripte an einem entfernten Ort ausgeführt. Fahren Sie in der Postersituation den Pi sicher herunter. Einfaches Pickel.

8

Konfigurieren Sie die statische IP-Adresse für Ihren Laptop und Raspberry Pi. Konfigurieren Sie es im rapberryPI wie folgt. 

[email protected]>Sudo nano /etc/network/interfaces

Konfigurieren Sie anschließend Folgendes wie erforderlich, um eine Verbindung zu Ihrem Laptop herzustellen. 

iface eth0 inet static

address 192.168.1.81

netmask 255.255.255.0

broadcast 192.168.1.255
7
Don

statische IP auf dem Raspberry Pi konfigurieren:

Sudo nano /etc/network/interfaces

und dann hinzufügen:

iface eth0 inet static
     address 169.254.0.2
     netmask 255.255.255.0
     broadcast 169.254.0.255

dann können Sie über ssh auf Ihre Himbeere zugreifen

ssh [email protected]
4
Queky

Hier finden Sie Anweisungen für Windows-Benutzer zum Herstellen einer Verbindung zu einem RPi, indem Sie nur ein Ethernet-Kabel und einen DHCP-Server verwenden. Es ist kein Kreuzkabel erforderlich, da das RPi damit umgehen kann. Ich habe einen Blogbeitrag, der dies mit Bildern hier dokumentiert, die möglicherweise einfacher zu verfolgen sind.

Downloads

Laden Sie den DHCP-Server für Windows (Download-Link lautet hier ). Entpacken Sie die Zip-Datei und öffnen Sie die dhcpwiz-Anwendung, die den DHCP-Server konfiguriert.

DHCP-Serverkonfiguration

Klicken Sie auf dem ersten Bildschirm auf Weiter.

Suchen Sie im zweiten Bildschirm nach einer Zeile "Local Area Connection", und überprüfen Sie, ob die IP-Adresse 0.0.0.0 und der Status enabled lautet. Verbinden Sie das Ethernet-Kabel vom RPi mit Ihrem Laptop und schalten Sie den Pi ein. Klicken Sie in diesem Bildschirm auf Aktualisieren, bis sich die IP-Adresse in 169.254.*.* ändert. Wenn es etwas anderes ist, sollten Sie Ihre Netzwerkeinstellungen für die LAN-Verbindung ändern (stellen Sie sicher, dass es sich nicht um eine statische IP/DNS handelt). Klicken Sie auf diese LAN-Verbindungszeile und klicken Sie auf Weiter.

Überprüfen Sie HTTP (Web Server). Dies erleichtert das Auffinden der IP-Adresse des RPi. Klicken Sie auf Weiter.

Übernehmen Sie die Standardeinstellungen und klicken Sie auf Weiter, bis Sie zum Bildschirm Writing the INI file gelangen. Überprüfen Sie Overwrite existing file und drücken Sie die Write INI file-Taste. Dann auf Weiter klicken.

Überprüfen Sie im letzten Bildschirm Run DHCP server immediately und klicken Sie auf "Fertig stellen".

DHCP-Server und Beziehen der IP-Adresse Ihres Raspberry Pi

Dadurch wird der eigentliche DHCP-Server mit der Konfiguration gestartet, die Sie gerade im vorherigen Assistenten erstellt haben. Klicken Sie auf die Schaltfläche Continue as tray app. Der DHCP-Server wird in der Taskleiste minimiert.

Von 1 Sekunde bis 5 Minuten werden Sie in der Taskleiste mit Ihrem Laptop und der neuen IP-Adresse Ihres RPi angezeigt. Diese Warnung ist sehr schnell und Sie werden sie wahrscheinlich vermissen. Normalerweise ist die IP-Adresse Ihres RPi 169.254.0.2, aber es könnte *.01 oder etwas anderes sein. Der Zugriff auf die Web-Benutzeroberfläche des DHCP-Servers ist unter http: //localhost/dhcpstatus.xml einfacher. Dadurch wird der Hostname mit seiner IP-Adresse als "raspberrypi" aufgeführt.

Jetzt können Sie in Ihr RPi einsteigen oder einen Remote-Desktop einrichten und dessen WLAN-Einstellungen oder was auch immer Sie möchten, konfigurieren.

Fehlerbehebung

Dies kann etwas wählerisch sein. Ich hatte meine Verbindung scheinbar unterbrochen und konnte die IP-Adresse nicht wieder verwenden. Normalerweise kann ich den Pi neu starten und die IP-Adresse erneut abrufen. Manchmal muss ich sowohl den RPi als auch den DHCP-Server neu starten. Manchmal muss ich das mehrmals machen. Als ich 15 Minuten lang keine Verbindung erhielt, kopierte ich alle Dateien im Ordner dhcpsrv2.5.1 in einen neuen Ordner und versuchte es erneut. es hat sofort funktioniert.

3
Matthew Moisen

Sie können ein Crossover-Ethernet-Kabel verwenden - http://en.wikipedia.org/wiki/Ethernet_crossover_cable

Angenommen, Ihr RPi ist ein DCHP-Client. Führen Sie am besten einen einfachen DHCP-Server auf Ihrem Notebook aus, um dem RPi eine IP-Adresse zuzuweisen.

2
MrDB

Ja, Sie können die Himbeere ohne Router direkt an Ihren PC anschließen. Dazu ist es erforderlich, dass sich die Himbeere und Ihr Computer im selben Subnetz befinden und beide über eine statische IP-Adresse verfügen (und ein Ethernet-Kabel zwischen den beiden Geräten angeschlossen ist).

Eine ideale Konfiguration wäre folgende:

Raspberry zu eth0: IP: 192.168.1.10 SubNet: 255.255.255.0

Ihr PC: IP: 192.168.1.11 SubNet 255.255.255.0

Um eine manuelle IP-Adresse für Himbeere festzulegen, können Sie diesem Leitfaden folgen.

In Ihrem PC können Sie eine manuelle IP-Adresse in den Einstellungen des Netzwerkadapters festlegen. Die Vorgehensweise hängt von Ihrem Betriebssystem ab.

Wenn Sie die beiden statischen IP-Adressen konfiguriert haben, können Sie sich über SSH mit dem IP-Set (192.168.1.10) mit der Himbeere verbinden.

Eine andere einfachere Methode ist, an GPIO einen Button anzubringen, um die Himbeere auszuschalten! Schau mal hier!

1
grausof

Was für mich funktionierte, war eine Kombination der Antworten von Nicole Finnie und Ciro Santilli sowie einiger anderer Antworten.

Einrichten des Pi

Wir müssen zwei Dinge tun: Aktivieren Sie ssh auf dem pi und konfigurieren Sie das pi so, dass eine statische IP verwendet wird.

Ssh aktivieren

Fügen Sie eine Datei mit dem Namen ssh in die boot partition der SD-Karte ein (nicht den /boot-Ordner in der Stammpartition). Dies ist an anderen Stellen gut dokumentiert.

Statische IP

Öffnen Sie /etc/dhcpcd.conf auf der SD-Karte des pi, und entfernen Sie das Kommentarzeichen für eine statische IP-Adresse (beginnt in Zeile 40). Stellen Sie die Adressen auf

# Example static IP configuration:
interface eth0
static ip_address=10.42.0.182/24
static routers=10.42.0.1
static domain_name_servers=10.42.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

Laptop einrichten

Stellen Sie zunächst sicher, dass Sie networkmanager (mit GUI) auf Ihrem Laptop installiert haben. Stellen Sie dann sicher, dass dnsmasq nicht als Dienst ausgeführt wird:
systemctl status dnsmasq
Wenn dieser Befehl druckt, dass der Dienst angehalten wurde, sind Sie in Ordnung.

Als nächstes müssen wir networkmanager konfigurieren. Öffnen Sie /etc/NetworkManager/NetworkManager.conf und fügen Sie oben zwei Zeilen ein: 

[main]
DNS=dnsmasq

Dann neu starten. Dieser Schritt ist möglicherweise nicht erforderlich. Es kann ausreichend sein, den Dienst NetworkManager neu zu starten. Gehen Sie nun zur NetworkManager-GUI (normalerweise über ein Symbol in der Ecke des Bildschirms aufgerufen) und wählen Sie Edit Connections.... Klicken Sie im daraufhin angezeigten Fenster auf das Symbol +, um eine neue Verbindung zu erstellen. Wählen Sie als Typ Ethernet und drücken Sie Create.... Gehen Sie zur Registerkarte IPv4 Settings und wählen Sie die Methode Shared to other computers aus. Geben Sie der Verbindung einen guten Namen und speichern Sie.

Schließen Sie den Raspberry Pi an und stellen Sie sicher, dass Ihr Laptop Ihre neue Verbindung als Ethernet-Verbindung verwendet. Wenn dies der Fall ist, sollte Ihrem Pi jetzt eine IP von Ihrem PC zugewiesen werden. Sie finden dies, indem Sie zuerst ifconfig ausführen. Dies sollte mehrere Textblöcke enthalten, einen für jede Netzwerkschnittstelle. Sie interessieren sich für den, der etwas wie enp0s25 oder eth0 ist. Es sollte eine Zeile haben, die etwas ähnliches liest
inet 10.42.0.1 netmask 255.255.255.0 broadcast 10.42.0.255
Schauen Sie sich die Broadcast-Adresse an (in diesem Fall 10.42.0.255). Wenn es anders ist als bei mir, schalten Sie den Pi aus und legen Sie die SD-Karte wieder in Ihren Laptop ein, um den static ip_address in einen Wert zu ändern, in dem die ersten drei Zahlen mit Ihrer Broadcast-Adresse übereinstimmen. Ändern Sie auch den static routers und den ersten von domain_name_servers in die inet-Adresse Ihres Laptops. Schalten Sie das Pi wieder ein und schließen Sie es an. Führen Sie ifconfig erneut aus, um zu sehen, dass sich die Adressen nicht geändert haben.

ssh in das pi

ssh [email protected]
Wenn Sie connection refused erhalten, wird auf dem Pi kein ssh-Server ausgeführt. Wenn Sie Host unreachable bekommen, tut es mir leid.

Hoffe das hilft jemandem!

0
Froff