Каково последнее число в этом IP-адресе?

От bash(1) страница справочника:

          +(pattern-list)
                 Matches one or more occurrences of the given patterns

Так, это похоже + оператор regex, к которому относятся шаблон в parens.

8
10.12.2011, 06:15
3 ответа

IP-адрес является просто числом. Тот, который - поскольку я уверен, что Вы знаете - однозначно определяет компьютер в сети. Но все еще просто число, к которому мы возвратимся.

Давайте возьмем пример: 192.168.1.105

Вы заметите, что IP-адрес разбит в четыре части: {192, 168, 1, 105}. И Вы, вероятно, также знаете, что каждая из тех частей может иметь значение от 0-255.

Оказывается, что номера 0.. 255 могут быть представлены в 8 битах. Таким образом, IP-адрес состоит из четырех разделов, и каждый раздел может иметь значение 0.. 255. Это означает, что каждый раздел может быть представлен с 8 битами. С четырьмя из этих разделов Вы имеете (4 раздела) * (8 битов/разделы) = 32 бита. Представить весь IP-адрес.

Помните, когда мы сказали, что IP-адрес является просто числом? Ну, IP является 32-разрядным целым числом. Для удобства мы пишем это как "192.168.1.105", но Вы могли легко записать это как 0xC0A80169

В двоичном файле, все 32 двоичных единицы информации в их славе: 11000000101010000000000101101001

Хорошо. Таким образом, теперь Ваш вопрос: что означает 192.168.1.105/24?

Это означает, что первые 24 бита IP-адреса являются "подсетью". Это означает, что первые 24 бита объектов в Вашей сети являются тем же. Поскольку Вы добавляете новые компьютеры, у Вас только есть остающихся 8 битов (помните, IP является 32-разрядным числом) для обращения к новым устройствам.

Поскольку у Вас есть ценность на 8 битов адресуемости в этом примере, можно только добавить 255 устройств.

110000001010100000000001 01101001
------------------------
(subnet)

Давайте разобьем подсеть:

11000000 10101000 00000001 = 192 168 1

Видеть?

Тот же пример с/16 подсетью: 192.168.1.105/16

1100000010101000 0000000101101001
----------------
(subnet)

Так в этом случае каждый IP-адрес начинается 192.168 - первые 16 битов IP-адреса. И затем у нас есть 16 битов, остающихся для новых устройств. 16 битов = 65 535 устройств.

Таким образом, если у Вас есть маленькая подсеть, у Вас есть большая часть интернет-адресов. MIT владеет/8 подсетью - то есть, имейте блок IP-адреса, и они могут добавить 2^24 устройства.Очень здорово!

16
27.01.2020, 20:08
  • 1
    , как Вы получаете это", числа 0.. 255 может быть представлен в 8 битах?" спасибо. –  runeveryday 10.12.2011, 07:52
  • 2
    Вы неправильно использовали термин "маска подсети" здесь. Просто "подсеть" или "сеть (адрес)" должны использоваться. Часть после наклонной черты является маской подсети. –  camh 10.12.2011, 08:08
  • 3
    @runeveryday при открытии калькулятора в двоичном/шестнадцатеричном режиме, будет легче видеть. Каждый бит может иметь 2 состояния. Каждый бит, который Вы добавляете, удвоит количество состояний, которые можно представить. С 8 битами Вы можете иметь 2^8 = 256 состояний, таким образом 0-255. –  greatwolf 10.12.2011, 10:53
  • 4
    процесса, какой camh, сказанный, и когда Вы используете маски подсети в других контекстах (например, в любых настройках конфигурации сети), 192.168.0.1/16 имеет маску подсети 255.255.0.0, о чем Вы говорите, определенно сетевой адрес. –  derobert 10.12.2011, 15:31

Это не IP-адреса по сути, они - диапазоны. Последнее число (который, как psusi упоминания назван маской подсети) указывает на число соответствующих битов: /16 означает, что сеть включает все числа, запускающиеся с первых 16 битов указанного IP (223.248 в Вашем примере). A /8 сеть класса A с 2^24 адреса, /16 класс B с 2^16 (65536), и a /24 класс C с 2^8 = 256 адресов. Вы чаще всего видите это в локальных сетях: 192.168.0.0/24 (обычно используемый в небольших домашних сетях) и 10.0.0.0/16, обычно замечаемый в больших интранет компании. Вы видите другие зарезервированные диапазоны, перечисленные в нотации подсети и списке диапазона и общем количестве доменов на Википедию.

5
27.01.2020, 20:08
  • 1
    Также важно отметить, что числа, кроме того, 8, 16, и 24 позволяются. 10.1.2.0/23 совершенно допустимо, и означает 10.1.2.0–10.1.3.255. –  derobert 10.12.2011, 06:35

Это - маска подсети для сети. Другими словами, это говорит, насколько большой сеть./24 является сетью класса C, имея 256 адресов и маску подсети 255.255.255.0./16 является классом B с маской подсети 255.255.0.0.

2
27.01.2020, 20:08
  • 1
    спасибо, сколько имеют адреса/16? как добраться 24 или 16? есть ли все еще, другие числа –  runeveryday 10.12.2011, 05:47
  • 2
    /24 не является классом C, ни является/16 классом B, ни/8 классом A. Те классы являются всеми определенными диапазонами IP-адресов, класс C прибывает от 192.0.0.0–223.255.255.255. Таким образом, 10.0.0.0/24 не является классом C, это - на самом деле подсеть в пространстве класса A. Ее лучшее для избегания использования старой classfull терминологии. –  derobert 10.12.2011, 06:30
  • 3
    @derobert, возможная техническая особенность, хотя очень хорошо можно записать 192.168.1.0/24 и это действительно, являются классом C. –  psusi 11.12.2011, 05:06
  • 4
    @runeveryday,/16 имеет 16 битов для сети и 16 для адреса узла, давая 2^16, или 65 536 адресов./24 использует 24 бита для сети, уезжающей 8 для хоста, давая 2^8 или 256 адресов. Можно использовать любое значение после / между 1 и 31. –  psusi 11.12.2011, 05:08

Теги

Похожие вопросы