Электростальский форум
Hi-Tech => Интернет и сети => Тема начата: youctac от 11.12.08, 12:03:26
-
собственно вопрос из любопытства:
сегодня, обращался пинговал сервак по адрессу 10.177.0.10, НО так: ping 10.177.0.010 ,а ответ приходил от 10.177.0.8
проверил все настройки, пока допетрил, что дело в запросе.
потом уже методом тыка:
пинг - куда переправляет
010 - 8
020 - 16
030 - 24
040 - 36
в общем, цифра после 0 - множитель 8ки.
откуда 8?
-
собственно вопрос из любопытства:
сегодня, обращался пинговал сервак по адрессу 10.177.0.10, НО так: ping 10.177.0.010 ,а ответ приходил от 10.177.0.8
проверил все настройки, пока допетрил, что дело в запросе.
потом уже методом тыка:
пинг - куда переправляет
010 - 8
020 - 16
030 - 24
040 - 36
в общем, цифра после 0 - множитель 8ки.
откуда 8?
Если бы ты меньше хлопал ушами на информатике - заметил бы закономерность.
-
закономерность-то я заметил:
в общем, цифра после 0 - множитель 8ки
откуда 8ка?
цифры в пинге и ИП-адресе записываются-то в десятичной системе
-
Все просто. Почитай про восьмеричную систему счисления.
можно вместо "ping 127.8.16.32" написать Ping 0177.010.020.040
-
Все просто. Почитай про восьмеричную систему счисления.
можно вместо "ping 127.8.16.32" написать Ping 0177.010.020.040
да думал уже. зачем винда не перевела в 8ную систему тогда первую цифру?
логично же, что если я одну цифру из адреса пишу в 8ной системе, то я весь адрес буду писать в ней :dp:
можно вместо "ping 127.8.16.32" написать Ping 0177.010.020.040
:bl: :ap:
-
может, я ни фига и не смыслю в системах счисления,
но как объяснить это - не знаю:
-
может, я ни фига и не смыслю в системах счисления,
но как объяснить это - не знаю:
Во втором случае, когда пингуете 0.1, пакет доходит до сетевого адреса 1.1, а дальше комп не знает куда послать, поэтому и отвечает(а отвечает сетевуха с адресом 1.1), что заданная сеть не доступна...
-
в данном случае 1.1 это шлюз, и он не видит такой сети как 192.168.0.0/24
-
тогда ясно
спасибо :-)
-
гыгы)) вы еще IPv6 не видели)) там в IP-адресе не 4 байта, а 16, поэтому числа там записываются 16ричными значениями, не через точку, а через двоеточие, с возможностью пропускать повторяющиеся 0)) это вообще дико будет выглядеть, уж поверьте))
-
гыгы)) вы еще IPv6 не видели)) там в IP-адресе не 4 байта, а 16, поэтому числа там записываются 16ричными значениями, не через точку, а через двоеточие, с возможностью пропускать повторяющиеся 0)) это вообще дико будет выглядеть, уж поверьте))
видел :ab:
вот когда пинговать будет гемморойно =)))
-
Это не баг, это фича. =)
int inet_aton(const char *cp, struct in_addr *pin);
inet_aton() converts the Internet host address cp from the IPv4 numbers-and-dots notation into binary form (in network byte order) and stores it in the
structure that inp points to. inet_aton() returns non-zero if the address is valid, zero if not. The address supplied in cp can have one of the following
forms:
a.b.c.d Each of the four numeric parts specifies a byte of the address; the bytes are assigned in left-to-right order to produce the binary address.
a.b.c Parts a and b specify the first two bytes of the binary address. Part c is interpreted as a 16-bit value that defines the rightmost two bytes of
the binary address. This notation is suitable for specifying (outmoded) Class B network addresses.
a.b Part a specifies the first byte of the binary address. Part b is interpreted as a 24-bit value that defines the rightmost three bytes of the
binary address. This notation is suitable for specifying (outmoded) Class C network addresses.
a The value a is interpreted as a 32-bit value that is stored directly into the binary address without any byte rearrangement.
In all of the above forms, components of the dotted address can be specified in decimal, octal (with a leading 0), or hexadecimal, with a leading 0X).
Addresses in any of these forms are collectively termed IPV4 numbers-and-dots notation. The form that uses exactly four decimal numbers is referred to as
IPv4 dotted-decimal notation (or sometimes: IPv4 dotted-quad notation).
-
гыгы)) вы еще IPv6 не видели)) там в IP-адресе не 4 байта, а 16, поэтому числа там записываются 16ричными значениями, не через точку, а через двоеточие, с возможностью пропускать повторяющиеся 0)) это вообще дико будет выглядеть, уж поверьте))
видел :ab:
вот когда пинговать будет гемморойно =)))
днсы еще никто не отменял)) у ipv6 много других плюсов)) например если пингуешь в подсети своего провайдера, то первую часть можно сократить также)
-
днсы еще никто не отменял)) у ipv6 много других плюсов)) например если пингуешь в подсети своего провайдера, то первую часть можно сократить также)
есть и минусы - я и так в половине случаев набираю "зштп" вместо "ping" :ag:
Это не баг, это фича. =)
:dp: сомнительная, imho
-
Это не баг, это фича. =)
:dp: сомнительная, imho
ну для юзеров может быть, для админов вполне пригодная и понятная и с идеологией компьютеров в разрез не идет совершенно
как говорится - у нас все двоично, восьмерично, десятично и шестнадцатирично
-
собственно вопрос из любопытства:
сегодня, обращался пинговал сервак по адрессу 10.177.0.10, НО так: ping 10.177.0.010 ,а ответ приходил от 10.177.0.8
проверил все настройки, пока допетрил, что дело в запросе.
потом уже методом тыка:
пинг - куда переправляет
010 - 8
020 - 16
030 - 24
040 - 36
в общем, цифра после 0 - множитель 8ки.
откуда 8?
Справочник по си, первый найденный гуглом:
Константы. Целые.
Десятичные ( цифры 0-9, первая цифра не 0 )
Восьмеричные ( цифры 0-9, первая цифра 0 )
Шестнадцатиричные ( цифры 0-9, буквы a-f или A-F, начинается с 0x или 0X )
PS. В некоторых (скажем почти во всех) эмбеддед си еще используется 0b для обозначения двоичной битовой записи
PPS.
ну и арифметика 8 = 010 = 0x8 = 0b1000
ну и арифметика 10 = 012 = 0xA = 0b1010