Wie vernetze ich zwei Ubuntu-Computer über Ethernet (ohne Router)?

65

Wie kann ich zwei Ubuntu-Computer miteinander vernetzen, damit sie sich an einer IP-Adresse "sehen" können?

8128
quelle
6
Was sind Ihre Anforderungen? Benutzt du einen Router?
Nixnotwin
1
was genau du willst, sei klarer, bitte bearbeite deine Frage :)
aziz joh
1
Haben Sie ein Crossover-Kabel? en.wikipedia.org/wiki/Ethernet_crossover_cable
Brandon Bertelsen

Antworten:

49

Wenn Sie zwei Computer ohne Router zum Verbinden verwenden. Zum physischen Anschließen der Computer benötigen Sie entweder einen Switch, einen Hub oder ein Crossover-Kabel (*). Anschließend müssen Sie die IP-Adresse manuell in demselben Bereich zuweisen.

In Ubuntu ist das einfach. Klicken Sie mit der rechten Maustaste auf das Netzwerkmanager-Applet im Dialogfeld Sie müssen dies auf beiden Computern ausführen

  1. Verbindungen bearbeiten
    • kabelgebundene Registerkarte
      • hinzufügen
  2. Geben Sie die MAC-Adresse der Schnittstelle ein, die Sie konfigurieren möchten. Der Befehl ifconfig kann Ihnen die MAC-Adresse anzeigen:

    $ ifconfig  
    eth0      Link encap:Ethernet  HWaddr 00:30:1b:b9:53:94 
    

    2.1. In neueren Linux-Versionen haben sich die Namen der Netzwerkkarten geändert. wlp2s0, enp1s0. Suchen Sie nach Dingen mit ähnlichen Namen wie en"Ethernet" oder wl"Drahtlos".

    $ ip a l
    2: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 98:e7:f4:5d:59:90 brd ff:ff:ff:ff:ff:ff
    3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 84:ef:18:7b:cd:39 brd ff:ff:ff:ff:ff:ff
    

HWaddr 00:30:1b:b9:53:94= MAC-Adresse link/ether 84:ef:18:7b:cd:39= MAC-Adresse

  1. Klicken Sie dann auf die Registerkarte IPv4-Einstellungen. Methode auf manuell setzen.
  2. Klicken Sie auf Hinzufügen, um die IP-Adresse auf Computer A und B hinzuzufügen.

Beispiel für Computer A

address  | netmask       | gateway   
10.0.0.1 | 255.255.255.0 |  

Beispiel für Computer B

address  | netmask       | gateway   
10.0.0.2 | 255.255.255.0 | 

Überprüfen Sie, ob Sie sich gegenseitig
von Computer A aus anpingen können.

$ ping 10.0.0.2  
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=128 time=0.457 ms

von Computer B.

$ ping 10.0.0.1  
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=128 time=0.457 ms

bedeutet, dass alles funktioniert.

(*) Die meisten modernen Computer können ein normales Kabel anstelle einer Frequenzweiche verwenden. Einige alte Computer benötigen ein Crossover-Kabel

Nelaaro
quelle
Ich fand dies zuverlässiger als die Befehlszeilenmethode
8128
1
Benötigen Sie unbedingt ein Crossover-Kabel?
Seanny123
6
Ich denke, die meisten modernen Netzwerkkarten sind intelligent genug, um zu erkennen, ob ein Crossover-Kabel verwendet wird oder nicht. en.wikipedia.org/wiki/Medium_dependent_interface
Seanny123
2
Die Antwort mit der Methode "shared" in NetworkManager unter askubuntu.com/a/3117/6130 ist viel einfacher, erfordert keine Konfiguration auf einem der Computer und ermöglicht es einem der Computer, eine Internetverbindung gemeinsam zu nutzen. Es ist dasselbe wie das, was @Robert Ancell in seiner Antwort hier sagt.
Nealmcb
2
Ist es wichtig, von welchem ​​Computer aus ich das mache? Kann ich alles über einen Computer einrichten oder muss ich diesen Vorgang auf jedem Computer zweimal ausführen?
Matt Corby
29

Befehlszeilenbeispiel, weil es so schnell und einfach ist.

In neueren Linux-Versionen haben sich die Namen der Netzwerkkarten geändert. wlp2s0, enp1s0. Suchen Sie nach etwas mit ähnlichen Namen wie enEthernet / wlWireless.

$ ip a l
2: enp1s0: 
3: wlp2s0: 

Sie müssten den folgenden Befehl aktualisieren, um andere dev enp1s0usw. zu verwenden .

Auf Computer A

sudo ip ad add 10.0.0.10/24 dev eth0

Auf Computer B

sudo ip ad add 10.0.0.20/24 dev eth0

Um von A nach B zu testen

ping 10.0.0.20

Um von B nach A zu testen

ping 10.0.0.10

Vorausgesetzt, ein Kabel verbindet die beiden Computer und die Netzwerkschnittstelle auf beiden ist aktiviert und heißt eth0, sollte dies funktionieren. Der Rest dieses Beitrags hilft bei der Fehlersuche, wenn es Probleme gibt.

10.0.0.xx ist die IP-Adresse der Computer. / 24 teilt den Computern mit, dass sich die letzten 8 Bits der 32-Bit-IP-Adresse ändern können. Es ähnelt dem Sprichwort netmask 255.255.255.0. Hiermit werden die Routen eingerichtet, über die der Computer / das Netzwerk verfügt.

Sie sollten etwas Ähnliches wie dieses mit sehen

ip route
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.20

Wenn Sie in der Routentabelle etwas wie das oben Gesagte nicht sehen, aber etwas wie das folgende sehen, wenn Sie ip ad verwenden. Sie müssen die Adresse erneut mit der Subnetz-Syntax / 24 hinzufügen.

ip ad
inet 172.16.1.40/32 scope global eth0

Beachten Sie die / 32, die effektiv besagt, dass dies der einzige Computer ist, der in einem Netzwerk eines Computers vorhanden ist. Welches ist sein Selbst. Netzmaske 255.255.255.255. Daher keine Routen und das Netzwerk funktioniert nicht.

Um herauszufinden, welche Netzwerkschnittstellen Sie haben und welche funktionieren

# ip ad
1: lo: mtu 16436 qdisc noqueue 
    link / loopback 00: 00: 00: 00: 00: 00 brd 00: 00: 00: 00: 00: 00
    inet 127.0.0.1/8 scope host lo
    inet6 :: 1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000
    link / ether 46: fd: 51: f9: f5: 2e brd ff: ff: ff: ff: ff: ff
    inet 172.16.0.186/24 brd 172.16.0.255 scope global eth0
    inet 172.16.1.10/24 scope global eth0
    inet 172.16.1.40/32 scope global eth0
    inet6 fe80 :: 44fd: 51ff: fef9: f52e / 64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: mtu 1500 qdisc noop qlen 1000
    link / ether 72: 3f: 92: eb: a4: cc brd ff: ff: ff: ff: ff: ff

Wenn Sie eine IP-Adresse löschen müssen, weil Sie einen Fehler gemacht haben

ip ad del 10.0.0.40/32 dev eth0 ip ad del 10.0.0.40/24 dev eth0

Dadurch werden die Routen sowie die IP-Adresse entfernt.

Nelaaro
quelle
Dies funktionierte anfangs, schien jedoch weniger zuverlässig als die grafische Methode zu sein.
8128
3
Dieses Setup bleibt nicht bestehen. Es geht nach einem Neustart verloren. Es ist eine einfache und schnelle Methode, um eine funktionierende Netzwerkverbindung zwischen zwei Computern herzustellen.
Nelaaro
Funktionierte nicht auf Ubuntu 14.04 zwischen einem ThinkPad T430 und T400 mit einem 26awg-Kabel.
Ciro Santilli
Funktioniert hervorragend, wenn Sie einen 17.04 Ubuntu-Computer (A) an eine zweite Linux-Box (B) ohne Tastatur oder Bildschirm anschließen. Bevor Sie B vom Netzwerk trennen, starten Sie ssh und führen Sie "sudo ip ad add 10.0.0.20/24 dev eth0" wie oben gezeigt aus. Dann können Sie B mit dem Patchkabel an A anschließen. Verwenden Sie in einer neueren Ubuntu-Version auch "ip ad", um den Namen der Schnittstelle zu erhalten (da dies nicht immer eth0 ist).
PJ Singh
28

Wählen Sie einen der Computer als Server aus. Wenn ein Computer mit dem Internet verbunden ist, verwenden Sie diesen als Server.

Klicken Sie auf dem Server auf die Netzwerkanzeige und wählen Sie Edit Connections. Wählen Sie die Ethernet-Verbindung aus und klicken Sie auf die EditSchaltfläche. Gehen Sie zur IPv4Registerkarte und wechseln Sie Methodvon Automatic (DHCP)zu Shared to other computers.

Verbinden Sie die beiden Computer mit einem Ethernet-Kabel. Dem zweiten Computer wird vom Server eine IP-Adresse zugewiesen und er erhält Zugang zum Internet.

Wenn Sie alte Hardware haben, müssen Sie möglicherweise sicherstellen, dass das Ethernet-Kabel ein Crossover-Kabel ist. Moderne Hardware übernimmt automatisch die Frequenzweiche.

Getestet auf Ubuntu 14.04 LTS.

Robert Ancell
quelle
1
Dies funktioniert auch unter Linux Mint 18, nur damit Sie es wissen.
Skylar Ittner
5

Unten ist eine Wiederholung von Nelaars Antwort, die für Ubuntu 14.04 aktualisiert wurde.

Hardware-Anforderungen

Um zwei Computer ohne Router zu verbinden, benötigen Sie eine der folgenden Möglichkeiten:

  • Ein Standard-Ethernet-Kabel, das mit modernster Hardware funktionieren soll, oder
  • Ein Ethernet- Crossover-Kabel anstelle einer modernen Netzwerkkarte oder
  • Ein einfacher Ethernet-Hub (und zwei Ethernet-Kabel).

In Ubuntu 14.04 LTS

Sie müssen die IP-Adresse im selben Bereich manuell zuweisen. Bei den folgenden Schritten wird davon ausgegangen, dass Sie die Standard-Unity-Schnittstelle verwenden. Wiederholen Sie diese Schritte für jeden Computer.

  1. Klicken Sie auf die Netzwerkanzeige im Unity-Bereich (oben rechts).
  2. Wählen Sie in der Dropdown-Liste die Option Verbindungen bearbeiten ... aus.
  3. Im Netzwerkverbindung im Dialogfeld klicken Sie auf die Add - Taste.
  4. Wenn Sie zur Auswahl eines Verbindungstyps aufgefordert werden, wählen Sie Ethernet und klicken Sie auf die Schaltfläche Erstellen .
  5. Nennen Sie Ihre Verbindung "Direkt zu [anderem Hostnamen]", um sich von einer typischen Ethernet-Verbindung zu unterscheiden.
  6. Im Geräte - MAC - Adresse Dropdown-Liste wählen Sie das entsprechend der Schnittstelle Sie verwenden möchten.
  7. Wechseln Sie zur Registerkarte IPv4-Einstellungen .
  8. Ändern Sie die Methode in Manuell .
  9. klicken Sie auf die Add Schaltfläche , um eine IP - Adresse hinzuzufügen.
    • Beispieleinstellungen für Computer 1:
      • Adresse: 10.0.0.1
      • Netzmaske: 255.255.255.0
      • Tor:
    • Beispieleinstellungen für Computer 2:
      • Adresse: 10.0.0.2
      • Netzmaske: 255.255.255.0
      • Tor:

Sobald dies eingerichtet ist und die Computer miteinander verkabelt sind, versuchen Sie, sich gegenseitig einen Ping-Befehl zu erteilen.

user@computer1:~$ ping 10.0.0.2

Die Ausgabe sollte ungefähr so ​​aussehen:

PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=128 time=0.457 ms
aaaantoine
quelle
Sie müssen IP-Adressen nicht manuell zuweisen, wie in meiner Antwort gezeigt.
Robert Ancell
2

Ihre Frage ist nicht ganz kurz, ich gehe davon aus, dass Sie nur 2 Ubuntu-Computer im Netzwerk wollen.

Das Anschließen von 2 Ubuntu-Computern ist recht einfach. Besorgen Sie sich einfach ein Netzwerkkabel (Cat 5e Cross Cable) und verbinden Sie beide Computer mit diesem Kabel. Ubuntu sollte in der Lage sein, beide mit einer " Auto Eth " -Verbindung (Automatic IP) zu verbinden. Dies sollte so ziemlich alles sein, um 2 Ubuntu-Computer in das Netzwerk zu bekommen.

Später Wenn Sie die dem Computer zugewiesene automatische IP sehen möchten, führen Sie den Befehl aus ifconfigoder klicken Sie mit der rechten Maustaste auf das ' NetworkManager-Applet ' und klicken Sie auf die Verbindungsinformationen

Bildbeschreibung hier eingeben

Gaurav Butola
quelle
2
Ich habe dies versucht, aber die Verbindung wird jedes Mal verrückt, wenn ich versuche, eine Verbindung herzustellen. Woran könnte das liegen? Ich habe die IPv4-Methode auf "Gemeinsam mit anderen Computern" eingestellt
Severo Raz
0

Zumindest am 16.04 können Sie dies einfach tun, indem Sie zu den Netzwerkeinstellungen gehen:

  1. Bearbeiten Sie die Kabelverbindung
  2. Wechseln Sie zur Registerkarte IPv4
  3. Wählen Sie Nur Link-Lokal

Tun Sie dies auf beiden Computern und Sie sind fertig.

Manuel Garcia
quelle