Что такое unreachable.htm? как исправить связанные с ним ошибки? [решено]
Содержание:
- How to Fix a Destination Host Unreachable Error
- Причины «Недопустимый хост назначения» при пинге из-за пределов моей сети?
- Usage
- Пожалуйста, помогите c переводом:
- Значение «Destination host unreachable» при прослушивании из-за пределов моей сети?
- Installation
- Коды ICMP
- 8 ответов
- How to Check If Destination a Host Unreachable Error Is Resolved
- iptables и ICMP
How to Fix a Destination Host Unreachable Error
For this example, we’re going to check our Default Gateway settings, then follow the steps to fix them.
-
To start, we need to check our internet connection via a browser. For this example, we’ll check google.com to see if it loads on our device. If it does, we know there’s a problem on our local network, rather than a broader connection issue.
-
Next, we’re going to test our IPv6 connection to see if that’s where the issue lies. To do this, open the Command Prompt and use the following command to ping your original IP address, but type «ping -6» to isolate the IPv6 line.
C:\Users\Me>ping -6 151.101.194.114
-
You should get a reply in the Command Prompt, which looks like this:
Pinging 151.101.194.114 with 64 bytes of data:Reply from 151.101.194.1.241: Destination host unreachable.Reply from 151.101.194.1.241: Destination host unreachable.Reply from 151.101.194.1.241: Destination host unreachable.Reply from 151.101.194.1.241: Destination host unreachable.
-
The above reply comes from IP address 151.101.194.1.241, which seems to relate to the remote gateway handling our request. To check this, run a traceroute using the following command:
C:\Users\Me>tracert -6 -d 151.101.194.114
-
You should get a response, and it should resemble the following:
Tracing route 151.101.194.114 over a maximum of 30 hops:1 1 ms 1 ms 1 ms 151.101.194.1.2412 151.101.194.1.241 reports: Destination host unreachable.Trace complete.
-
From this, we can make a judgment that 151.101.194.1.241 is configured as the default gateway. To check if this is as it should be, we can look at our IP settings via the netshell. To launch netshell, enter the following command:
C:\Users\Me>netsh
-
With netshell open, enter this command:
netshell>interface ipv6netshell interface ipv6>showconfig
-
The response will show our Local Area Connection details, with a reference line for the Default Gateway. In our example we see the following:
Default Gateway 151.101.194.1.241
This confirms that 151.101.194.1.241 is currently configured as the default gateway, but when we look at our actual device’s IP address, we see it’s slightly different: 151.101.194.1.244.
Причины «Недопустимый хост назначения» при пинге из-за пределов моей сети?
Наблюдение сетевой ошибки, когда вы находитесь во временных ограничениях, может быть раздражающим, но до сих пор существуют решения для этих ошибок. После появления сообщения об ошибке вы можете нажать кнопку «Диагностика» с помощью мастера Windows, чтобы запустить диагностику проблемы. Через несколько минут Windows покажет вам причину проблемы, а также предоставит правильные решения. Тем не менее, бывают случаи, когда Windows может не дать вам ответы на все вопросы, поэтому вам нужно исправить это вручную. Во-первых, вам нужно изменить настройки адаптера. Найдите настройки в центре «Сеть и общий доступ». Во-вторых, сбросьте TCP / IP. При изменении настройки адаптера вы можете изменить TCP / IP. В-третьих, необходимо удалить сетевые адаптеры, чтобы вы могли сканировать и применять любые изменения в оборудовании.
Usage
Try it out for yourself! Download the repo and open ‘Unreachable.playground’.
Dynamic Loop Exit
In some cases, the only way a function returns a value is from within a loop,
but the compiler may not have enough information to know that.
func getValue() -> Int { for i in ... { if i == 20 { return i } } assertUnreachable() }
Switch Conditions
A statement may have conditions applied to its branches that make it
exhaustive, but that may not obvious to the compiler.
func sign(of value: Double?) -> FloatingPointSign? { switch value { case let x? where x >= return .plus case let x? where x < return .minus case .some assertUnreachable() case .none return nil } }
Safety
With , debug builds will exit via a fatal error if the
function is called. In optimized builds, it’s no different than calling
.
Unreachable vs
The function can be used as somewhat of a drop-in
replacement for . In debug mode, they emit similar instructions.
However, when compiling with optimizations, allows its
parent to emit very few instructions.
Here we’re checking whether a has a value in the lower or upper
range. Because we know that these are the only valid ranges, we can let the
compiler know that the third branch is unreachable. If at some point has a
value that’s not within either range, it will emit an assertion failure in
unoptimized builds.
With Unreachable
func isLowerRange(_ x: UnicodeScalar) -> Bool { switch x.value { case ...0xD7FF return true case 0xE000...0x10FFFF return false default assertUnreachable() } }
Assembly output:
.globl __T011Unreachable12isLowerRangeSbs7UnicodeO6ScalarVF .p2align 4,0x90 __T011Unreachable12isLowerRangeSbs7UnicodeO6ScalarVF: pushq %rbp movq %rsp, %rbp cmpl $55296, %edi setb %al popq %rbp retq
With
func isLowerRange(_ x: UnicodeScalar) -> Bool { switch x.value { case ...0xD7FF return true case 0xE000...0x10FFFF return false default fatalError("Unreachable") } }
Assembly output:
.globl __T011Unreachable12isLowerRangeSbs7UnicodeO6ScalarVF .p2align 4,0x90 __T011Unreachable12isLowerRangeSbs7UnicodeO6ScalarVF: .cfi_startproc movb $1, %al cmpl $55296, %edi jb LBB4_3 addl $-57344, %edi cmpl $1056768, %edi jae LBB4_4 xorl %eax, %eax LBB4_3: retq LBB4_4: pushq %rbp Lcfi0: .cfi_def_cfa_offset 16 Lcfi1: .cfi_offset %rbp,-16 movq %rsp, %rbp Lcfi2: .cfi_def_cfa_register %rbp subq $48, %rsp leaq L___unnamed_2(%rip), %rax movq %rax, (%rsp) movl $,32(%rsp) movq $56,24(%rsp) movl $2,16(%rsp) movq $69,8(%rsp) leaq L___unnamed_3(%rip), %rdi leaq L___unnamed_4(%rip), %rcx movl $11, %esi movl $2, %edx movl $11, %r8d xorl %r9d, %r9d callq __T0s17_assertionFailures5NeverOs12StaticStringV_SSAE4fileSu4lines6UInt32V5flagstFTfq4nxnnn_n subq $40, %rsp .cfi_endproc
Пожалуйста, помогите c переводом:
Giving a definition of the term “comedy”, one may face some difficulties as it’s one of the most complex categories of aesthetics. Comedy is historically volatile, it depends on the context and has a social nature. The laughter is not always a sight of comedy, and comedy is not always defined by laughter. It is circumstances, sharpening the contradictions and helping to reveal its social nature
Английский-Русский
(8) 4 ÷ 2 are divided into 5 steps
(a) Correct quotient
(b) Over-quotient by once
(c) Over-quotient by twice or more
(d) Same first digits (2 scenarios)
(e) Both first digits are 1 over-quotient (129, 348, 567, 786, 95)
(f) Line to help memorize returning : minus 1 time, skip a space and add back Mr. Cat
Английский-Русский
The rival gangs piled into one another with a vengeance — fists flew, knives flashed, clubs struck muscle and bone with sickening smacks
Английский-Русский
1. The ENIAC (1943-1946) The first all-electronic computer, the Electronic Numerical Integrator and Calculator (ENIAC) was developed at the Moore School of Electrical Engineering of the University of Pennsylvania. It was developed as a result of a military need. J.Presper Eckert and John Mauchly proposed the machine to solve the problem of calculating firing tables for new weapons. The ENIAC weigh
Английский-Русский
Значение «Destination host unreachable» при прослушивании из-за пределов моей сети?
Попытка подключиться к сетевому источнику может показаться легким, но это не может помочь решить проблему через некоторое время. Возможно, ваше сетевое подключение настроено неправильно или имеется технический сбой. В других случаях на вашем конце нет возможности подключения. Эти ошибки являются типичными примерами сетевой ошибки. Он появляется, когда что-то не так во время соединения, поэтому он не может достичь своего конечного источника. Тем не менее, эти ошибки указывают на характер проблемы, которая поможет вам ее решить.
Список общих сетевых ошибок:
- Сетевой кабель не подключен
- Адреса конфликтов IP-адресов уже используются
- Не удается найти сетевой путь
- В сети существует повторяющееся имя
- Ограниченное или отсутствие подключения
- Связанный с ограниченным доступом
- Ошибка «Не удалось подключиться к сети» -3
- Ошибка «Не удалось установить VPN-соединение» 800
Installation
Install Using Swift Package Manager
-
Add the project to your .
import PackageDescription let package = Package( name: "MyAwesomeProject", dependencies: [ .Package(url: "https://github.com/nvzqz/Unreachable.git", majorVersion: 1) ] )
-
Import the Unreachable module.
import Unreachable
Install Using CocoaPods
-
use_frameworks! pod 'Unreachable', '~> 1.2.0'
If you want to be on the bleeding edge, replace the last line with:
pod 'Unreachable', :git => 'https://github.com/nvzqz/Unreachable.git'
-
Run and open the file to launch Xcode.
-
Import the Unreachable framework.
import Unreachable
Install Using Carthage
Carthage is a decentralized dependency
manager for Objective-C and Swift.
-
Add the project to your .
-
Run and follow
in order to add Unreachable to your project. -
Import the Unreachable framework.
import Unreachable
Коды ICMP
Расшифровка кодов ICMP сообщений:
- echo reply (0) — echo reply (echo-ответ, пинг)
- destination unreachable (3) — destination unreachable/destination port unreachable (адресат недосягаем). Код 3/4 уведомляет о необходимости фрагментации сообщения, отправитель получает его, меняет свой MSS на еще более меньший.
- source quench (4) — source quench (подавление источника, просьба посылать пакеты медленнее)
- redirect (5) — redirect (редирект)
- echo request (8) — echo request (echo-запрос, пинг)
- router adver-tisement (9) — router advertisement (объявление маршрутизатора)
- router solicitation(10) — router solicitation (ходатайство маршрутизатора)
- time-to-live exceeded (11) — time-to-live exceeded (истечение срока жизни пакета)
- IP header bad (12) — IP header bad (неправильный IP заголовок пакета)
- timestamp request (13) — timestamp request (запрос значения счетчика времени)
- timestamp reply (14) — timestamp reply (ответ на запрос значения счетчика времени)
- information request (15) — information request (запрос информации)
- information reply (16) — information reply (ответ на запрос информации)
- address mask request (17) — address mask request (запрос маски сети)
- address mask reply (18) — address mask reply (ответ на запрос маски сети)
Ответ на некоторые ICMP-сообщения может привести к разглашению некоторой информации о хосте, в то время как другие — привести к модификации таблицы маршрутизации, поэтому их необходимо запретить.
Обычно выход во внешний мир разрешают ICMP-сообщениям 3, 8, 12, в то время как на вход принимают только 0, 3, 4, 11, 12.
8 ответов
ping-шлюз с обоих компьютеров ping 192.168.1.254 затем попытайтесь выполнить команду ping comp1 в compt2 и comp2 в comp1 затем опубликуйте результаты arp -a из BOTH boxes
Интересно, что-то блокирует трафик
запустите sudo tcpdump -ni wlan0 arp в одном окне на обоих компьютерах, а затем попытайтесь выполнить pinging друг друга и шлюз из другого окна на оба снова и опубликовать результаты
До сих пор это показывает, что comp1 делает то, что предполагается отправить ARP-запрос (запрашивая адрес comp2s etherner), но не получая ответ arp (слушая что-нибудь обратно). Вам нужно увидеть tcpdump с PC2, чтобы увидеть полную картину. Либо запустите команду экрана, либо сделайте это на PC1 sudo tcpdump -w pc1.pcap -ni wlan0 arp & , а на PC2 sudo tcpdump -w pc2.pcap -ni wlan0 arp & & amp; следует бросить его в фоновом режиме и дать вам свое приглашение обратно для pings. После того, как pings не удалось вернуть задания на передний план, fg %1 остановите его ctrl+c и прочитайте записанные файлы с помощью sudo tcpdump -r pc1/2.pcap
Edit3 ПК делают то, что они предполагают, выставляя ARP, но они не получают, что указывает на маршрутизатор. Может быть, отключить настройку брандмауэра, сомневаюсь, что он поддерживает VLAN? Kinda желает, чтобы вы позволили ему работать немного дольше 22: 45: 48.379058 , ваш маршрутизатор отправил свой собственный запрос ARP, когда он искал PC1 22:45:48.379058 ARP, Request who-has 192.168.1.77 tell 192.168.1.254, length 28 , и оба ПК должны были его видеть, мы можем видеть, что PC1 увидел его и ответил своим IP-адресом, но не мог сказать, получил ли PC2 его с тех пор, как вы остановили его, остановившись только на 22: 45: 09.796214 . Предположим, что вы синхронизированы с NTP.
Посмотрите, что он все еще не разрешен. Не видел, что у вас есть эти адаптеры на обоих ПК. Можете ли вы подключиться к маршрутизатору на eth вместо wlan и посмотреть, сможете ли вы пинговать? Или получить еще один маршрутизатор? Или сделать горячую точку на телефоне подключить оба компьютера и попытаться выполнить ping? Также удивлен, увидев, что вы смогли подключить два компьютера вместе и пинговать друг друга, вы использовали кроссоверный кабель?
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links: Site Howto | Site FAQ | Sitemap | Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux – A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter. For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author’s experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own. Click Here to receive this Complete Guide absolutely free. |
How to Check If Destination a Host Unreachable Error Is Resolved
-
To check if the issue is resolved, go back to the Command Prompt and exit the netshell using the following command:
netsh interface ipv6>exit
-
Now, we’re ready to try our ping test once more, using this command:
C:\Users\Me>ping -6 151.101.194.114
-
Just as before, the ping should come back with a reply showing the new Default Gateway.
Pinging 151.101.194.114 with 64 bytes of data:64 bytes from 151.101.194.114: icmp_seq=0 ttl=57 time=27.205 ms64 bytes from 151.101.194.114: icmp_seq=1 ttl=57 time=14.109 ms64 bytes from 151.101.194.114: icmp_seq=2 ttl=57 time=13.887 ms64 bytes from 151.101.194.114: icmp_seq=3 ttl=57 time=13.954 ms64 bytes from 151.101.194.114: icmp_seq=4 ttl=57 time=18.269 ms
-
As we can see, our ping test is now working and our connection is running as expected.
iptables и ICMP
Правила для Правила iptables. Список возможных типов выводится по команде
# iptables -p icmp -h Valid ICMP Types: any echo-reply (pong) destination-unreachable network-unreachable host-unreachable protocol-unreachable port-unreachable fragmentation-needed source-route-failed network-unknown host-unknown network-prohibited host-prohibited TOS-network-unreachable TOS-host-unreachable communication-prohibited host-precedence-violation precedence-cutoff source-quench redirect network-redirect host-redirect TOS-network-redirect TOS-host-redirect echo-request (ping) router-advertisement router-solicitation time-exceeded (ttl-exceeded) ttl-zero-during-transit ttl-zero-during-reassembly parameter-problem ip-header-bad required-option-missing timestamp-request timestamp-reply address-mask-request address-mask-reply
Можно указать стандартный числовой код или сообщение. Пропустить все входящие ICMP-эхо-запросы (пинги).
# iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT # iptables -I INPUT -p icmp --icmp-type echo-request -j ACCEPT
Блокирует фрагменты ICMP-пакетов
iptables -I INPUT -p icmp -f -j DROP
Рекомендуемые правила для ICMP:
#!/bin/sh IPT="/sbin/iptables" $IPT -A INPUT -p icmp --icmp-type 3 -j ACCEPT # destination-unreachable 3/4 $IPT -A INPUT -p icmp --icmp-type 8 -j ACCEPT # echo request $IPT -A INPUT -p icmp --icmp-type 12 -j ACCEPT # IP header bad $IPT -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT # $IPT -A OUTPUT -p icmp --icmp-type 3 -j ACCEPT # $IPT -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT # $IPT -A OUTPUT -p icmp --icmp-type 11 -j ACCEPT # $IPT -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT #
опция –reject-with
В отличие от цели DROP, где пакет просто отбрасывается, в данном случае отправителю будет отправлено IСМР-сообщение «Port unreachable / icmp port unreachable» («Порт недоступен»). С помощью опции –reject-with можно изменить тип ICMP-сообщения:
# iptables -A INPUT -s 1.2.3.4 -j REJECT --reject-with icmp-net-unreachable
У опции –reject-with есть следующие аргументы:
icmp-net-unreachable — сеть недоступна; icmp-host-unreachable — узел недоступен; icmp-port-unreachable — порт недоступен; icmp-proto-unreahable — неподдерживаемый протокол; icmp-net-prohibited — сеть запрещена; icmp-host-prohibited — узел запрещен.
По умолчанию будет передано сообщение port-unreachable.
Вышеперечисленные аргументы являются ICMP error messages.В дополнение к опции –reject-with TCP-пакеты можно отклонить с помощью аргумента tcp-reset, который отправляет RST-сообщения отправителю. Это наилучший с точки зрения безопасности способ, нужно обязательно использовать именно его. TCP RST пакеты используются для закрытия TCP соединений.