如何使用以太网(没有路由器)将两台Ubuntu计算机联网?


Answers:


49

如果您使用两台没有路由器的计算机来连接它们。要物理连接计算机,您将需要开关,集线器或交叉电缆(*)。然后,您需要在相同范围内手动分配IP地址。

在Ubuntu中,这很简单。右键单击“网络管理器”中的“小程序”。您需要在两台计算机上都这样做

  1. 编辑连接
    • 有线标签
  2. 放置您要配置的接口的mac地址。ifconfig命令可以显示您的mac地址是什么:

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

    2.1。在较新版本的Linux上,网卡名称已更改。wlp2s0enp1s0。寻找名称与en以太网/ wl无线类似的东西。

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

  1. 然后单击“ ipv4设置”选项卡。将方法设置为手动。
  2. 单击添加以在计算机A和B上添加IP地址。

计算机A的示例

address  | netmask       | gateway   
10.0.0.1 | 255.255.255.0 |  

计算机B的示例

address  | netmask       | gateway   
10.0.0.2 | 255.255.255.0 | 

查看是否可以
从计算机A 相互ping通。

$ 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

从计算机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

表示一切正常。

(*)大多数现代计算机可以使用普通电缆代替交叉电缆。一些旧计算机将需要交叉电缆


我发现此方法比命令行方法更可靠
8128年

1
您是否绝对需要交叉电缆?
Seanny123

6
我认为大多数现代网卡都足够智能,可以检测是否使用了交叉电缆。en.wikipedia.org/wiki/Medium_dependent_interface
Seanny123

2
askubuntu.com/a/3117/6130上使用NetworkManager中的“共享”方法的答案要简单得多,不需要在一台计算机上进行配置,并允许其中一台计算机共享Internet连接。这与@Robert Ancell在这里的回答中所说的一样。
nealmcb 2014年

2
我从哪台计算机上进行操作有关系吗?我可以通过一台计算机进行全部设置,还是必须在每台计算机上进行两次此过程?
Matt Corby

29

命令行示例,因为它是如此快速和简单。

在较新版本的Linux上,网卡名称已更改。wlp2s0enp1s0。寻找名称与en以太网/ wl无线类似的东西。

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

您将需要更新以下命令以使用其他命令dev enp1s0

在计算机A上

sudo ip ad add 10.0.0.10/24 dev eth0

在计算机B上

sudo ip ad add 10.0.0.20/24 dev eth0

从A到B进行测试

ping 10.0.0.20

从B到A进行测试

ping 10.0.0.10

假设电缆正在连接两台计算机,并且两台计算机上的网络接口均已启用并且名为eth0,则该电缆应该可以工作。这篇文章的其余部分是为了帮助在出现问题时排除故障。

10.0.0.xx是计算机的IP地址。/ 24告诉计算机32位IP地址的最后8位可以更改。它类似于说网络掩码255.255.255.0。这将设置计算机/网络可用的路由。

您应该会看到与此类似的东西

ip route
10.0.0.0/24 dev eth0 proto内核作用域链接src 10.0.0.20

如果您在路由表中没有看到上述内容,但是在使用ip ad时看到了类似内容。您需要使用/ 24子网语法再次添加地址。

ip ad
inet 172.16.1.40/32作用域全局eth0

请注意,/ 32实际上是说这是一台计算机的网络上存在的唯一计算机。这是它的自我。网路遮罩255.255.255.255。因此,没有路由,网络也无法正常工作。

找出您拥有哪些网络接口以及哪些接口在工作

#ip广告
1:lo:mtu 16436 qdisc noqueue 
    链接/环回00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8范围主机lo
    inet6 :: 1/128作用域主机 
       永远有效
2:eth0:mtu 1500 qdisc pfifo_fast qlen 1000
    链接/以太46:fd:51:f9:f5:2e brd ff:ff:ff:ff:ff:ff:ff
    inet 172.16.0.186/24 brd 172.16.0.255作用域全局eth0
    inet 172.16.1.10/24作用域全局eth0
    inet 172.16.1.40/32作用域全局eth0
    inet6 fe80 :: 44fd:51ff:fef9:f52e / 64作用域链接 
       永远有效
3:eth1:mtu 1500 qdisc noop qlen 1000
    链接/以太72:3f:92:eb:a4:cc brd ff:ff:ff:ff:ff:ff:ff

如果您需要删除一个IP地址,则会导致您输入错误

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

这将删除路由以及IP地址。


最初可以使用,但是似乎不如图形方法可靠。
8128年

3
此设置不会持续。重新启动后,它将丢失。在两台计算机之间建立有效的网络连接是一种简单快捷的方法。
nelaaro 2012年

在带有26awg电缆的ThinkPad T430和T400之间的Ubuntu 14.04上不起作用。
Ciro Santilli新疆改造中心法轮功六四事件

将17.04 Ubuntu计算机(A)连接到没有键盘或屏幕的第二个Linux盒(B),效果很好。在断开B与网络的连接之前,将ssh插入其中并执行“ sudo ip ad add 10.0.0.20/24 dev eth0”,如上所示。然后,您可以继续使用跳线将B连接到A。此外,在较新版本的Ubuntu上,使用如上所示的“ ip ad”来获取接口名称(因为它并不总是eth0)。
辛格

28

选择其中一台计算机作为服务器。如果一台计算机已连接到Internet,则将该服务器用作服务器。

在服务器上,单击网络指示器,然后选择Edit Connections。选择以太网连接,然后单击Edit按钮。转到IPv4标签,Method从更改Automatic (DHCP)Shared to other computers

使用以太网电缆将两台计算机连接在一起。第二台计算机将从服务器分配IP地址并访问Internet。

如果您使用的是旧硬件,则可能需要确保以太网电缆是交叉电缆。现代硬件会自动进行分频。

在Ubuntu 14.04 LTS上测试。


1
众所周知,这也可以在Linux Mint 18上使用。
Skylar Ittner'1

5

以下是对nelaar的回答的重述,已针对Ubuntu 14.04更新。

硬体需求

为了在没有路由器的情况下连接两台计算机,您将需要以下之一:

  • 标准以太网电缆,可以与大多数现代硬件配合使用,或者
  • 代替现代NIC 的以太网交叉电缆,或
  • 一个简单的以太网集线器(和两根以太网电缆)。

在Ubuntu 14.04 LTS中

您将需要在相同范围内手动分配IP地址。以下步骤假定您使用的是标准Unity接口。对每台计算机重复这些步骤。

  1. 单击Unity面板(右上方)上的Network指示器。
  2. 从下拉列表中,选择“ 编辑连接...”。
  3. 在“ 网络连接”对话框中,单击“ 添加”按钮。
  4. 当提示您选择连接类型时,选择“ 以太网”,然后单击“ 创建...”按钮。
  5. 将您的连接命名为“直接指向[其他主机名]”,以区​​别于典型的以太网连接。
  6. 设备MAC地址下拉列表中,选择与您计划使用的接口相对应的接口。
  7. 切换到“ IPv4设置”选项卡。
  8. 方法更改为手动
  9. 单击添加按钮添加IP地址。
    • 1号计算机的示例设置:
      • 地址: 10.0.0.1
      • 网路遮罩: 255.255.255.0
      • 网关:
    • 2号计算机的示例设置:
      • 地址: 10.0.0.2
      • 网路遮罩: 255.255.255.0
      • 网关:

一旦设置完成,并且计算机已连接在一起,请尝试相互ping通。

user@computer1:~$ 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

您不需要如我的答案中所示手动分配IP地址。
罗伯特·安塞尔

2

您的问题不是很简短,我假设您只需要网络中的2台Ubuntu计算机。

连接两台Ubuntu计算机非常容易,只需获得一根网络电缆(Cat 5e交叉电缆),然后使用该电缆连接两台计算机,Ubuntu应该能够使两台计算机都具有“ Auto Eth ”(自动IP)连接。要在网络中获得2台ubuntu计算机,应该差不多了。

稍后,如果您想查看分配给计算机的自动IP,请运行命令ifconfig或右键单击“ NetworkManager applet ”,然后单击连接信息。

在此处输入图片说明


2
我已经尝试过了,但是每次尝试连接失败都会使连接发疯。可能是什么问题?我已将IPv4方法设置为“与其他计算机共享”
Severo Raz 2012年

0

至少在16.04,您可以通过转到网络设置轻松地做到这一点:

  1. 编辑有线连接
  2. 转到“ IPv4”选项卡
  3. 选择仅本地链接

两台计算机上执行此操作,您就完成了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.