Saya memiliki dua komputer ubuntu di jaringan lokal dan tak satu pun dari mereka dapat saling ping. Setiap kali saya mencoba, saya mendapatkan pesan kesalahan "host tujuan tidak terjangkau". Kedua komputer dapat mengakses internet dengan masalah apa pun.
Saya memiliki router ActionTech v1000h dari Telus. Saya telah berhubungan dengan salah satu perwakilan pelanggan mereka dan mereka mengatakan bahwa seharusnya tidak ada alasan mengapa dua perangkat tidak dapat melakukan ping satu sama lain di jaringan.
Aku benar-benar bingung, apakah ada di antara kalian yang punya ide?
Komputer 1:
ifconfig -a
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:10084 errors:0 dropped:0 overruns:0 frame:0
TX packets:10084 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:797420 (797.4 KB) TX bytes:797420 (797.4 KB)
wlan0 Link encap:Ethernet HWaddr c4:85:08:77:d3:f5
inet addr:192.168.1.77 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::c685:8ff:fe77:d3f5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:373068 errors:0 dropped:0 overruns:0 frame:0
TX packets:380158 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:103445020 (103.4 MB) TX bytes:112630337 (112.6 MB)
rute -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
192.168.1.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0
iptables sudo -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Komputer 2:
ifconfig -a
etho0 Link encap:Ethernet HWaddr 00:24:8c:ae:f6:91
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:2
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
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:110 errors:0 dropped:0 overruns:0 frame:0
TX packets:110 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:8414 (8.4 KB) TX bytes:8414 (8.4 KB)
wlan0 Link encap:Ethernet HWaddr 00:22:43:9b:7b:64
inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::222:43ff:fe9b:7b64/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:252 errors:0 dropped:0 overruns:0 frame:0
TX packets:435 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:123143 (123.1 KB) TX bytes:65828 (65.8 KB)
rute -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan0
192.168.1.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0
iptables sudo -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Sunting: Contoh kesalahan ketika komputer 1 mencoba melakukan ping ke komputer 2:
ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
From 192.168.1.77 icmp_seq=1 Destination Host Unreachable
From 192.168.1.77 icmp_seq=2 Destination Host Unreachable
From 192.168.1.77 icmp_seq=3 Destination Host Unreachable
From 192.168.1.77 icmp_seq=4 Destination Host Unreachable
From 192.168.1.77 icmp_seq=5 Destination Host Unreachable
From 192.168.1.77 icmp_seq=6 Destination Host Unreachable
^C
--- 192.168.1.2 ping statistics ---
7 packets transmitted, 0 received, +6 errors, 100% packet loss, time 6031ms
pipe 3
Edit 2: arp -a
dari kedua komputer
Komputer 1:
? (192.168.1.254) at 20:76:00:f5:3b:70 [ether] on wlan0
Komputer 2:
? (192.168.1.254) at 20:76:00:f5:3b:70 [ether] on wlan0
? (192.168.1.77) at <incomplete> on wlan0
Edit 3: nmap -sn 192.168.1.0/24
di komputer 2
Starting Nmap 6.40 ( http://nmap.org ) at 2014-05-07 21:14 PDT
Nmap scan report for 192.168.1.2
Host is up (0.00024s latency).
Nmap done: 256 IP addresses (1 host up) scanned in 3.30 seconds
Sunting 4: Log tcpdump dari kedua komputer saat ping pertama 192.168.1.254 dan kemudian satu sama lain:
Komputer 1:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wlan0, link-type EN10MB (Ethernet), capture size 65535 bytes
22:45:01.661300 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:02.659393 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:03.659394 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:04.676872 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:05.675391 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:06.675396 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:07.692825 ARP, Request who-has 192.168.1.2 tell 192.168.1.77, length 28
22:45:48.379058 ARP, Request who-has 192.168.1.77 tell 192.168.1.254, length 28
22:45:48.379108 ARP, Reply 192.168.1.77 is-at c4:85:08:77:d3:f5, length 28
22:45:54.419388 ARP, Request who-has 192.168.1.254 tell 192.168.1.77, length 28
22:45:54.420875 ARP, Reply 192.168.1.254 is-at 20:76:00:f5:3b:70, length 28
Komputer 2:
reading from file pc2.pcap, link-type EN10MB (Ethernet)
22:44:43.538367 ARP, Request who-has 192.168.1.254 tell 192.168.1.2, length 28
22:44:43.676705 ARP, Reply 192.168.1.254 is-at 20:76:00:f5:3b:70 (oui Unknown), length 28
22:45:02.107935 ARP, Request who-has 192.168.1.254 tell 192.168.1.2, length 28
22:45:02.107951 ARP, Reply 192.168.1.254 is-at 20:76:00:f5:3b:70 (oui Unknown), length 28
22:45:06.780619 ARP, Request who-has 192.168.1.77 tell 192.168.1.2, length 28
22:45:07.778419 ARP, Request who-has 192.168.1.77 tell 192.168.1.2, length 28
22:45:08.778419 ARP, Request who-has 192.168.1.77 tell 192.168.1.2, length 28
22:45:09.796214 ARP, Request who-has 192.168.1.77 tell 192.168.1.2, length 28
Sunting 5: Atur ips statis untuk kedua komputer etho0 dan sambungkan dengan kabel internet. Kedua komputer pasti dapat melakukan ping satu sama lain melalui kabel ethernet! ifconfig -a
hasil eth0:
Komputer 1:
eth0 Link encap:Ethernet HWaddr 68:68:68:00:62:a4
inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::6a68:68ff:fe00:62a4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:15 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4060 (4.0 KB) TX bytes:7629 (7.6 KB)
Komputer 2:
eth0 Link encap:Ethernet HWaddr 00:24:8c:ae:f6:91
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::224:8cff:feae:f691/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:250 errors:0 dropped:0 overruns:0 frame:0
TX packets:130 errors:0 dropped:0 overruns:0 carrier:3
collisions:0 txqueuelen:1000
RX bytes:26501 (26.5 KB) TX bytes:20897 (20.8 KB)
sumber
Jawaban:
ping gateway dari kedua komputer
ping 192.168.1.254
kemudian coba ping comp1 ke compt2 dan comp2 ke comp1 kemudian posting hasilarp -a
dari KEDUA kotakEdit
Menarik, ada sesuatu yang menghalangi lalu lintas
jalankan
sudo tcpdump -ni wlan0 arp
di satu jendela di kedua komputer dan kemudian coba ping satu sama lain dan gateway dari jendela lain di kedua lagi dan memposting hasilEdit2
Sejauh ini menunjukkan bahwa comp1 melakukan apa yang seharusnya untuk mengirim permintaan arp (meminta alamat etherner comp2s) tetapi tidak mendapatkan balasan arp (mendengar apa pun kembali). Perlu melihat tcpdump dari PC2 untuk melihat gambar lengkapnya. Jalankan perintah layar atau lakukan ini di PC1
sudo tcpdump -w pc1.pcap -ni wlan0 arp &
dan PC2sudo tcpdump -w pc2.pcap -ni wlan0 arp &
& harus melemparnya di latar belakang dan memberi Anda prompt untuk ping. Setelah ping gagal mengembalikan pekerjaan ke latar depan denganfg %1
menghentikannyactrl+c
dan membaca file tertulis dengansudo tcpdump -r pc1/2.pcap
Edit3 PC melakukan apa yang seharusnya, mengeluarkan ARP tetapi mereka tidak melewati titik mana ke router. Mungkin pengaturan firewall dinonaktifkan, ragu mendukung VLAN? Agak berharap Anda membiarkannya berjalan sedikit lebih lama di 22: 45: 48.379058 router Anda mengirim permintaan ARP sendiri ketika sedang mencari PC1
22:45:48.379058 ARP, Request who-has 192.168.1.77 tell 192.168.1.254, length 28
kedua PC seharusnya melihatnya, kita dapat melihat bahwa PC1 melihatnya dan menjawab dengan IP tetapi tidak bisa katakan apakah PC2 mendapatkannya sejak Anda menghentikannya, berhenti tepat pada 22: 45: 09.796214 . Anggap saja jam Anda disinkronkan dengan NTP.Sunting4
Lihat itu masih belum terselesaikan. Tidak melihat bahwa Anda memiliki adaptor et pada kedua PC. Bisakah Anda hardwire ke router pada eth bukan wlan dan melihat apakah Anda bisa ping itu? Atau dapatkan router lain? Atau membuat hotspot di telepon menghubungkan kedua PC dan mencoba melakukan ping? Juga, terkejut melihat bahwa Anda dapat menghubungkan dua PC bersama dan saling ping apakah Anda menggunakan kabel crossover?
sumber
screen
perintah, dengan Ctrl-A kemudian c untuk membuat jendela baru bisa membantu. Ctrl-A lalu <Space> meneruskan jendela, Ctrl-A lalu <Backspace> kembali satu, sehingga Anda dapat beralih di antara mereka.Coba sambungkan langsung dua komputer Anda satu sama lain dengan kabel ethernet, setel ke alamat IP tetap (mis. A: 192.168.1.10, B: 192.168.1.20) dan coba ping lagi.
Maka Anda akan tahu dengan sangat cepat jika masalahnya berasal dari router Anda, atau komputer Anda.
sumber
ping localhost
atauping 127.0.0.1
yang memberitahu Anda apakah antarmuka jaringan sudah habis. Itu berarti kedua PC Anda dapat menangani permintaan jika saya tidak salah.Tanggapan pertama saya ketika saya melihat sesuatu yang aneh seperti ini adalah menginstal wireshark.
Kemudian buat agar Anda memiliki izin untuk menggunakannya sebagai non-root:
Pilih opsi "ya".
Keluar dan masuk kembali untuk mengambil keanggotaan grup baru dan sekarang Anda dapat menjalankan paket tangkap sebagai pengguna non-root.
Kemudian jalankan wireshark pada mesin, pilih antarmuka yang terhubung ke jaringan. Cobalah untuk meminimalkan lalu lintas selain dari pengujian Anda untuk mempermudah penafsiran hasil.
Jika Anda menjalankan wireshark di satu mesin, dan kemudian mencoba melakukan ping dari yang lain, Anda akan melihat sesuatu di mesin yang menjalankan wireshark yang mengatakan sesuatu di sepanjang baris "Siapa yang memiliki <ip Anda mencoba untuk melakukan ping>". Jika Anda mendapatkannya, maka komputer yang mencoba melakukan ping menerima permintaannya dari komputer wireshark. Semoga, Anda juga harus melihat di wireshark sesuatu di sepanjang baris "<alamat ip yang Anda coba ping> ada di <mac address>". Jika Anda melakukannya, maka komputer wireshark merespons. Jika demikian, coba jalankan wireshark di komputer ping dan lihat apakah Anda dapat melihat "<alamat ip yang Anda coba ping> ada di <mac address>" pada komputer ping.
Saya minta maaf jika ini terlalu rendah dan melampaui pikiran Anda. Metode ini tidak masuk ke dalam rincian. Tetapi bisa melihat apa yang sebenarnya terjadi pada jaringan cenderung membuat masalah menjadi lebih jelas.
sumber
tshark -i wlan0
dan tidak melihat hasil apa pun saat komputer 1 sedang mencoba melakukan ping ke komputer 2.Who has 192.168.1.2? Tell 192.168.1.77
tetapi tidak pernah menerima tanggapan. Router yang saya gunakan tidak memiliki isolasi klien yang diaktifkan sesuai faq mereka: actiontec.com/products/faqs.php?pid=191#q25Saya memiliki gejala yang sama dengan LAN saya (hanya mesin ubuntu). Itu terjadi sejak kami mendapat router baru. Itu salah satu dari dua band tersebut. Tidak bisa memahami masalahnya, sampai saya pikir mungkin satu "band" benar-benar terpisah dari yang lain. Seharusnya mudah untuk menguji, saya memutus satu mesin dari wifi dan menghubungkan kembali (ke SSID yang sama), dan apa yang Anda tahu, saya beruntung (apakah ini peluang 50-50?) Dan muncul di lan yang lain mesin dan sekarang saya bisa ping dan masuk ke dalamnya! "Nmap" di atas memberi saya petunjuk. Terima kasih untuk idenya.
sumber
Periksa konfigurasi router Anda dan lihat apakah firewall jaringan lokal tidak aktif. Beberapa router, secara default, mengisolasi perangkat yang terhubung satu sama lain.
Anda juga dapat menggunakan
nmap
:Lihat apakah ini muncul dengan sesuatu.
sumber
nmap
di komputer 2.Ada yang kacau dengan tabel perutean Anda, tetapi saya tidak dapat melihat ada yang salah dengannya. "Host unreachable" berarti kernel tidak dapat memutuskan adaptor mana yang digunakan untuk mengirim paket sehingga menyerah dan menjatuhkan paket.
Metrik untuk jaringan lokal Anda adalah 9. Itu seharusnya 0 atau 1. Namun kernel Linux dikabarkan mengabaikan metrik.
Saya akan mencoba menambahkan rute ke host tertentu. Coba ini di Komputer 1:
route add -host 192.168.1.2 metric 0 dev wlan0
Coba juga hapus rute ke 169.254.0.0 dan lihat apakah itu akan membantu. Itu tidak mungkin tetapi Anda tidak pernah tahu.
EDIT
Anda tidak menjalankan VPN, bukan? Cisco VPN dikenal mengganggu koneksi jaringan lokal.
sumber
route -n
tabel adalah:192.168.1.2 0.0.0.0 255.255.255.255 UH 0 0 0 wlan0
Semua paket Anda dari Komputer 1 dan Komputer 2 diarahkan ke wlan0 di setiap localhost, tetapi tidak satu pun antarmuka nirkabel yang dikaitkan dengan jaringan nirkabel.
Apakah Anda menetapkan alamat IP secara manual? Mereka harus disediakan, melalui DHCP, oleh router, sebagai bagian dari pengaturan asosiasi / otentikasi.
Lakukan
sudo iwlist wlan0 scan
di setiap komputer untuk melihat jaringan nirkabel yang tersedia untuk setiap komputer. Salah satunya harus menjadi router Anda. Apakah router dikonfigurasikan dengan ESSID (nama jaringan nirkabel) yang berbeda dari default?Jenis enkripsi apa yang dikonfigurasikan untuk / mampu dilakukan oleh router? Pilihannya adalah Tidak Ada (sangat sangat buruk), WEP (sangat buruk), WPA (buruk) dan WPA2 (terbaik tersedia untuk saat ini). Ketiga sistem harus menyetujui enkripsi yang sama.
Setelah semua diluruskan, Komputer 1 harus dapat terhubung secara nirkabel ke router, mendapatkan alamat IP darinya (bersama dengan informasi jaringan lainnya seperti gateway default, MTU). Bisa ke
ping
router.Ulangi untuk Komputer 2 .
Kemudian, dan hanya itu, mungkin Anda benar-benar
ping
, jika router memungkinkan perutean alamat lokal.sumber
WPA / WPA2
keamanan denganWPA or WPA2 - Personal
tipe WPA. ESSID dikonfigurasi untuk berbeda dari yang standar. Kedua komputer dapat menemukan router dengansudo iwlist wlan0 scan
perintah. Kedua komputer dapat melakukan ping router. Komputer 1 memiliki IP dinamis dan komputer 2 memiliki IP tetap. Tidak ada komputer yang bisa melakukan ping yang lain.NetworkManager
untuk mengelola koneksi wifi dan kata sandi saya, daniwconfig
menunjukkan:$ iwconfig wlan0 wlan0 IEEE 802.11bg ESSID:"Fairfield" Mode:Managed Frequency:2.422 GHz Access Point: 14:D6:4D:2D:5F:AE Bit Rate=54 Mb/s Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:off Link Quality=70/70 Signal level=-40 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx Invalid frag:0 Tx excessive retries:0 Invalid misc:37 Missed beacon:0
Masalahnya tampaknya ada di jaringan Anda. Tidak di mesin linux sendiri. Saya akan mengatakan itu adalah router nirkabel Anda / titik akses yang bermain trik dengan Anda.
Ini menunjukkan bahwa router / AP Anda menelan permintaan ARP, dan tanpa ARP berfungsi, mereka tidak mengetahui MAC dari yang lain, dan dengan demikian mereka tidak dapat berbicara Ethernet satu sama lain.
Usahakan router DHCP menetapkan alamat alih-alih menetapkannya sendiri secara statis.
Atau tambahkan secara statis ke cache ARP Anda untuk melihat apakah itu membantu.
Di Komputer1:
Di Komputer2:
sumber
Periksa apakah router wlan Anda memiliki opsi isolasi (aktifkan AP Isolasi) nonaktifkan.
sumber