How can I network two Ubuntu computers, so that they can "see" each other at an IP address?
If you are using two computers with no router to connect them. To physically connect the computers you will either need a switch, a hub or a crossover cable(*). Then, you need to manually assign ip address in the same range.
In ubuntu this is simple right click on the network manager applet in the
# example for computer one would be address | netmask | gateway 10.0.0.1 | 255.255.255.0 | # example for computer two would be 10.0.0.2 | 255.255.255.0 |
see if you can ping each other
means everything is working.
(*) Most modern computers can use a normal cable instead of a crossover. Some old computers will require a crossover cable
Pick one of the computers to be the server. If one computer has a connection to the Internet use that as the server.
On the server click the network indicator and chose "Edit Connections...". Select the Ethernet connection then click the "Edit..." button. Go to the IPv4 tab and change "Method" from "Automatic (DHCP)" to "Shared to other computers".
Connect the two computers together using an Ethernet cable. The second computer will get assigned an IP address from the server and get access to the Internet.
If you have old hardware you may need to make sure the Ethernet cable is a crossover cable. Modern hardware automatically does the crossover.
Tested on Ubuntu 14.04 LTS.
command line example cause it is so quick and simple
On computer A
On computer B
To test from A to B
To test from B to A
Provided that a cable is connecting the two computers and the network interface on both of them is enabled and called eth0 this should work. The rest of this post is to help trouble shoot if there are problems.
10.0.0.xx is the ip address of the computers. /24 tells the computers that the last 8 bits of the 32 bit ip address can change. It is similar to saying netmask 255.255.255.0. This set ups the routes that the computer / network has available to it.
you should see some thing similar to this using
If you don't see some thing like above in the route table but see some thing like this when you use ip ad. You need add the address again using /24 subnet syntax.
Notice the /32 which effectively is saying that is the only computer that exists on a network of one computer. Which is its self. Net mask 255.255.255.255. Hence no routes and the network does not work.
To find out which network interfaces you have and which are working
# 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
If you need to delete an ip address cause you made a mistake
This will remove the routes as well as the ip address.
Your question is not quite brief, I am going to assume you just want 2 Ubuntu computers in network.
Connecting 2 Ubuntu computers is easy enough, just get a Networking cable (Cat 5e Cross Cable) and connect both computers using that cable and Ubuntu should be able to get both of them an "Auto Eth" (Automatic IP) connection. This should be pretty much it to get 2 ubuntu computers in the network.
Later on If you want to see the Automatic IP assigned to the computer, run the command
Below is a reprise of nelaar's answer, updated for Ubuntu 14.04.
In order to connect two computers without a router, you will need one of the following:
In Ubuntu 14.04 LTS
You will need to manually assign IP address in the same range. The following steps assume you are using the standard Unity interface. Repeat these steps for each computer.
Once that's set up, and the computers are wired together, try pinging each other.
The output should look something like this: