Я пытаюсь подключить два компьютера Ubuntu 14.04 друг к другу с помощью перекрестного кабеля. В настройках сети я указал IP-адреса как: (руководство по Ipv4) ПК1 - IP: 10.0.0.1 Маска сети: 255.255.255.0 ПК2 - IP: 10.0.0.2 Маска сети: 255.255.255.0
ПК1 - это сервер и на нем установлен apache. Он обслуживает страницы с локального хоста. Я хотел увидеть эту веб-страницу из браузера PC2, набрав IP1. Тем не менее, моя проблема начинается с самого начала, что я не могу даже пинг с ПК1 на ПК2 или наоборот.
Результаты "ifconfig"
PC1: eth2 Link encap: Ethernet HWaddr 40: a8: f0: 5e: 91: 94
inet addr:10.42.0.1 Bcast:10.42.0.255 Mask:255.255.255.0
inet6 addr: fe80::42a8:f0ff:fe5e:9194/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:38 errors:0 dropped:0 overruns:0 frame:0
TX packets:246 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:7569 (7.5 KB) TX bytes:39911 (39.9 KB)
Interrupt:20 Memory:ec200000-ec220000
lo
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:933 errors:0 dropped:0 overruns:0 frame:0
TX packets:933 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:74985 (74.9 KB) TX bytes:74985 (74.9 KB)
PC2: eth2
Link encap:Ethernet HWaddr 40:a8:f0:5e:92:48
inet addr:10.42.0.40 Bcast:10.42.0.255 Mask:255.255.255.0
inet6 addr: fe80::42a8:f0ff:fe5e:9194/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:467 errors:0 dropped:0 overruns:0 frame:0
TX packets:460 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:64183 (64.1 KB) TX bytes:54663 (54.6 KB)
Interrupt:20 Memory:ec200000-ec220000
lo
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1380 errors:0 dropped:0 overruns:0 frame:0
TX packets:1380 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:103299 (103.2 KB) TX bytes:103299 (103.2 KB)
iptables --list
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere state RELATED,ESTABLISHED
REJECT udp -- anywhere anywhere udp dpt:mdns reject-with icmp-port-unreachable
ACCEPT all -- anywhere anywhere
DROP all -- anywhere anywhere PKTTYPE = broadcast
DROP all -- anywhere anywhere PKTTYPE = multicast
LOG all -- anywhere anywhere state INVALID LOG level warning prefix " Invalid "
DROP all -- anywhere anywhere state INVALID
LOG all -- anywhere anywhere limit: avg 25/min burst 7 LOG level info prefix "#BANNED-BY-ROOT# "
DROP all -- anywhere anywhere
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere state RELATED,ESTABLISHED
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Сервер имеет дополнительный: Цепной ввод ПРИНЯТЬ udp - где угодно где угодно udp dpt: bootps ПРИНИМАЕТ tcp - где угодно где угодно udp dpt: bootps ПРИНИМАЕТ udp - где угодно где угодно udp dpt: домен ПРИНИМАЕТ tcp - где угодно где угодно udp dpt: цепочка доменов Переадресация ПРИНЯТЬ все - везде 10.42.0.0./24 состояние СООТВЕТСТВУЕТ , УСТАНАВЛИВАЕТСЯ ПРИНЯТЬ все - 10.42.0.0./24 в любом месте
ПРИНЯТЬ все - в любом месте, ОТКАЗАТЬ все - в любом месте, отклонить - с помощью icmp-port-unreachable REJECT all - в любом месте, отклонить - с помощью icmp- порт-недостижимый
Во-первых, запустите.
Вставьте кабель Ethernet в оба компьютера и на сервере, нажмите на значок администратора сети на своем тире и избранных "соединениях редактирования".
Выберите автоматический eth0 и выберите ipv4 вкладку и затем выберите тип соединения, "совместно использованный к другим компьютерам". Сохраните изменения и выйдите из меню.
Затем нажмите на администратора сети и затем нажмите на сетевой автоматический eth0, чтобы обновить сеть или альтернативно, выполнить следующую команду:
sudo service network-manager restart
Для получения IP сервера нажмите на администратора сети и выберите "информацию о соединении" для получения IP Использования этот IP для доступа к серверу от pc2.
предоставьте доступ брандмауэра:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
и позволить ssh, если Вы хотите это также:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
[больше информации] [1] [1]: https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-using-iptables-on-ubuntu-14-04
Использовать ufw вместо этого:
Я попробовал это ранее сегодня на новой установке с отключенным ufw. Набор позволяет правила с помощью ufw.
sudo ufw allow in 80/tcp
sudo ufw allow out 80/tcp
Можно также установить для udp, но не нужный здесь, это - просто пример:
sudo ufw allow out 80/udp
sudo ufw allow in 80/udp
Если Вы хотите ssh доступ:
sudo ufw allow out 22/tcp
sudo ufw allow in 22/tcp
Используйте адрес 192.168.0.0/16
подсеть, не 10.0.0.0/24
, например, присвойте PC1 192.168.5.1
и PC2 192.168.5.2
. 10.0.0.0/24
адреса не могли бы оставить ПК, потому что они не направляются.