Come collegare in rete due computer Ubuntu utilizzando Ethernet (senza router)?


65

Come posso collegare in rete due computer Ubuntu, in modo che possano "vedersi" a un indirizzo IP?


6
Quali sono le tue esigenze? Usi un router?
nixnotwin,

1
quello che vuoi esattamente, sii più chiaro, per favore modifica la tua domanda :)
aziz joh


Risposte:


49

Se si utilizzano due computer senza router per collegarli. Per collegare fisicamente i computer è necessario uno switch, un hub o un cavo incrociato (*). Quindi, è necessario assegnare manualmente l'indirizzo IP nello stesso intervallo.

In Ubuntu questo è semplice. fare clic con il tasto destro del mouse sull'applet del gestore di rete in È necessario eseguire questa operazione su entrambi i computer

  1. modifica connessioni
    • scheda cablata
      • Inserisci
  2. inserisci l'indirizzo mac dell'interfaccia che configurerai. Il comando ifconfig può mostrarti qual è l'indirizzo mac:

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

    2.1. Nella versione più recente di Linux i nomi delle schede di rete sono cambiati. wlp2s0, enp1s0. Cerca qualcosa con nomi simili a enessere ethernet / wlessere wireless.

    $ 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= indirizzo link/ether 84:ef:18:7b:cd:39mac = indirizzo mac

  1. Quindi fare clic sulla scheda Impostazioni ipv4. imposta il metodo su manuale.
  2. fare clic su Aggiungi per aggiungere l'indirizzo IP sia sul computer A che B.

esempio per computer A

address  | netmask       | gateway   
10.0.0.1 | 255.255.255.0 |  

esempio per computer B

address  | netmask       | gateway   
10.0.0.2 | 255.255.255.0 | 

vedere se è possibile eseguire il ping a vicenda
dal computer A.

$ 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

dal 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

significa che tutto funziona.

(*) La maggior parte dei computer moderni può utilizzare un cavo normale anziché un crossover. Alcuni vecchi computer richiedono un cavo incrociato


Ho trovato questo più affidabile del metodo da riga di comando
8128

1
Hai assolutamente bisogno di un cavo incrociato?
Seanny123,

6
Penso che la maggior parte delle moderne schede di rete siano abbastanza intelligenti da rilevare se viene utilizzato o meno un cavo incrociato. en.wikipedia.org/wiki/Medium_dependent_interface
Seanny123

2
La risposta utilizzando il metodo "condiviso" in NetworkManager su askubuntu.com/a/3117/6130 è molto più semplice, non richiede alcuna configurazione su uno dei computer e consente a uno dei computer di condividere una connessione Internet. È lo stesso di quello che dice @Robert Ancell nella sua risposta qui.
nealmcb,

2
Importa da quale computer lo faccio? Posso impostare tutto tramite un computer o devo eseguire questo processo due volte su ogni macchina?
Matt Corby,

29

esempio da riga di comando perché è così semplice e veloce.

Nella versione più recente di Linux i nomi delle schede di rete sono cambiati. wlp2s0, enp1s0. Cerca qualcosa con nomi simili a enessere ethernet / wlessere wireless.

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

Dovresti aggiornare il comando seguente per usare diversi dev enp1s0ecc.

Sul computer A

sudo ip ad aggiungere 10.0.0.10/24 dev eth0

Sul computer B

sudo ip ad aggiungere 10.0.0.20/24 dev eth0

Per testare da A a B

ping 10.0.0.20

Per testare da B ad A

ping 10.0.0.10

A condizione che un cavo colleghi i due computer e che l'interfaccia di rete su entrambi sia abilitata e chiamata eth0 dovrebbe funzionare. Il resto di questo post è di aiuto per la risoluzione dei problemi in caso di problemi.

10.0.0.xx è l'indirizzo IP dei computer. / 24 dice ai computer che gli ultimi 8 bit dell'indirizzo IP a 32 bit possono cambiare. È simile a dire netmask 255.255.255.0. Questo imposta i percorsi che il computer / la rete ha a disposizione.

dovresti vedere qualcosa di simile a questo usando

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

Se non vedi qualcosa come sopra nella tabella del percorso ma vedi qualcosa del genere quando usi annunci ip. È necessario aggiungere nuovamente l'indirizzo utilizzando la sintassi della subnet / 24.


ambito annuncio IP 172.16.1.40/32 scope eth0 globale

Notare il / 32 che sta effettivamente dicendo che è l'unico computer che esiste su una rete di un computer. Qual è il suo io. Maschera a rete 255.255.255.255. Quindi nessuna route e la rete non funziona.

Per scoprire quali interfacce di rete hai e quali stanno funzionando

# ip annuncio
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 :: host ambito 1/128 
       valido_lft per sempre preferito_lft per sempre
2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000
    link / etere 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 eth0 globale
    inet 172.16.1.10/24 scope eth0 globale
    inet 172.16.1.40/32 scope eth0 globale
    inet6 fe80 :: 44fd: 51ff: fef9: collegamento ambito f52e / 64 
       valido_lft per sempre preferito_lft per sempre
3: eth1: mtu 1500 qdisc noop qlen 1000
    link / etere 72: 3f: 92: eb: a4: cc brd ff: ff: ff: ff: ff: ff

Se è necessario eliminare un indirizzo IP, si è verificato un errore

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

Ciò rimuoverà i percorsi e l'indirizzo IP.


Inizialmente funzionava, ma sembrava essere meno affidabile del metodo grafico.
8128,

3
Questa configurazione non persiste. Sarà perso dopo un riavvio. È un metodo semplice e rapido per impostare una connessione di rete funzionante tra due computer.
nelaaro,

Non ha funzionato su Ubuntu 14.04 tra un ThinkPad T430 e T400 con un cavo 26awg.
Ciro Santilli 10 改造 中心 法轮功 六四 事件

Funziona alla grande collegando un computer Ubuntu 17.04 (A) a un secondo box Linux (B) che non ha tastiera o schermo. Prima di disconnettere B dalla rete, inserire ssh in essa ed eseguire "sudo ip ad add 10.0.0.20/24 dev eth0" come mostrato sopra. Quindi puoi andare avanti e utilizzare il cavo patch per collegare B ad A. Inoltre, nella versione più recente di Ubuntu, usa "ip ad" come mostrato sopra per ottenere il nome dell'interfaccia (poiché non è sempre eth0).
PJ Singh,

28

Scegli uno dei computer come server. Se un computer ha una connessione a Internet, usalo come server.

Sul server fare clic sull'indicatore di rete e scegliere Edit Connections. Seleziona la connessione Ethernet quindi fai clic sul Editpulsante. Vai alla IPv4scheda e cambia Methodda Automatic (DHCP)a Shared to other computers.

Collegare i due computer insieme utilizzando un cavo Ethernet. Al secondo computer verrà assegnato un indirizzo IP dal server e otterrà l'accesso a Internet.

Se si dispone di hardware obsoleto, potrebbe essere necessario assicurarsi che il cavo Ethernet sia un cavo incrociato. L'hardware moderno esegue automaticamente il crossover.

Testato su Ubuntu 14.04 LTS.


1
Questo funziona anche su Linux Mint 18, solo per quello che sai.
Skylar Ittner,

5

Di seguito una ripresa della risposta di nelaar, aggiornata per Ubuntu 14.04.

Requisiti hardware

Per connettere due computer senza router, è necessario uno dei seguenti:

  • Un cavo Ethernet standard, che dovrebbe funzionare con la maggior parte dell'hardware moderno, oppure
  • Un cavo Ethernet incrociato , al posto di una moderna scheda di rete, oppure
  • Un semplice hub Ethernet (e due cavi Ethernet).

In Ubuntu 14.04 LTS

Sarà necessario assegnare manualmente l'indirizzo IP nello stesso intervallo. I seguenti passaggi presuppongono che si stia utilizzando l'interfaccia Unity standard. Ripetere questi passaggi per ciascun computer.

  1. Fai clic sull'indicatore Network sul pannello Unity (in alto a destra).
  2. Dal menu a discesa, seleziona Modifica connessioni ...
  3. Nella finestra di dialogo Connessioni di rete , fare clic sul pulsante Aggiungi .
  4. Quando viene richiesto di scegliere un tipo di connessione, selezionare Ethernet , e fare clic sul Crea ... pulsante.
  5. Assegna un nome alla tua connessione "Direttamente a [altro nome host]" per differenziarti da una tipica connessione Ethernet.
  6. Nel menu a discesa Indirizzo MAC dispositivo , seleziona quello corrispondente all'interfaccia che intendi utilizzare.
  7. Passa alla scheda Impostazioni IPv4 .
  8. Cambia il metodo in manuale .
  9. fai clic sul pulsante Aggiungi per aggiungere un indirizzo IP.
    • Impostazioni di esempio per Computer n. 1:
      • Indirizzo: 10.0.0.1
      • Maschera di rete: 255.255.255.0
      • Gateway:
    • Impostazioni di esempio per Computer n. 2:
      • Indirizzo: 10.0.0.2
      • Maschera di rete: 255.255.255.0
      • Gateway:

Una volta configurato e i computer sono collegati tra loro, prova a eseguire il ping.

user@computer1:~$ ping 10.0.0.2

L'output dovrebbe assomigliare a questo:

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

Non è necessario assegnare manualmente gli indirizzi IP come mostrato nella mia risposta.
Robert Ancell,

2

La tua domanda non è abbastanza breve, suppongo che tu voglia solo 2 computer Ubuntu in rete.

Connettere 2 computer Ubuntu è abbastanza semplice, basta ottenere un cavo di rete (Cat 5e Cross Cable) e collegare entrambi i computer utilizzando quel cavo e Ubuntu dovrebbe essere in grado di ottenere entrambi una connessione " Auto Eth " (IP automatico). Questo dovrebbe essere praticamente per ottenere 2 computer Ubuntu nella rete.

In seguito Se si desidera visualizzare l'IP automatico assegnato al computer, eseguire il comando ifconfigo fare clic con il tasto destro del mouse sull'applet NetworkManager e fare clic sulle informazioni di connessione

inserisci qui la descrizione dell'immagine


2
Ho provato questo, ma la connessione impazzisce cercando di connettersi e fallire ogni volta. Quale potrebbe essere il problema? Ho impostato il metodo IPv4 su "Condiviso con altri computer"
Severo Raz,

0

Almeno il 16.04 puoi farlo facilmente andando alle impostazioni di rete:

  1. Modifica la connessione cablata
  2. Vai alla scheda IPv4
  3. Seleziona Solo collegamento locale

Fallo su entrambi i computer e hai finito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.