Сначала мы должны установить ipcalc:
sudo apt install ipcalc
Адрес сети 192.167.38.54/13 несложно назвать и так, но экзаменаторов больше заинтересует скриншот команды
ipcalc 192.167.38.54/13
Ну а если убрать двоичный вывод при помощи флага -b
ipcalc -b 192.167.38.54/13
То первая строка с выводом будет ещё красивее.
2) Перевод маски 255.255.255.0 в префиксную и двоичную запись, /15 в обычную и двоичную, 11111111.11111111.11111111.11110000 в обычную и префиксную
В случае же с ipcalc 255.255.255.0 префиксную запись мы найдём в строке Netmask, где сам префикс указан после "=" (= 24). Так же в строках Address и Netmask мы можем увидеть двоичную запись этой маски - 11111111.11111111.11111111.00000000.
ipcalc /15 покажет нам, что данный слэш-формат скрывает под собой адрес 255.254.0.0, двоичной записью которого будет, как не трудно догадаться, 11111111.11111110.00000000.00000000.
ipcalc 11111111.11111111.11111111.11110000 даст нам адрес 192.168.1.1 в обычной и /24
3) Минимальный и максимальный хост в сети 12.167.38.4 при масках: /8, 11111111.11111111.00000000.00000000, 255.255.254.0 и /4
Здесь мы подставляем маску к ip адресу и смотрим HostMin и HostMax:
ipcalc 12.167.38.4/8
Здесь всё просто, смотрим на вывод и скриним.
Далее нам нужно перевести двоичную маску в слэш-формат:
11111111.11111111.00000000.00000000 = 255.255.0.0 = /16
И мы имеем маску /16. Чтобы увидеть минимальный и максимальный хосты используем ipcalc:
ipcalc 12.167.38.4/16
Маска 255.255.254.0 это /23. Выполняем
ipcalc 12.167.38.4/23
Ну и наконец
ipcalc 12.167.38.4/4
Делаем каждому выводу скриншот, заносим их в отчёт.
В части определения того, какие диапазоны относятся к локальному хосту, нам поможет википедия:
Основная статья: IPv4 § Назначения подсетей
10.0.0.0 — 10.255.255.255 (маска подсети для бесклассовой (CIDR) адресации: 255.0.0.0 или /8)
100.64.0.0 — 100.127.255.255 (маска подсети 255.192.0.0 или /10) - Данная подсеть рекомендована согласно RFC 6598 для использования в качестве адресов для CGN (Carrier-Grade NAT)
172.16.0.0 — 172.31.255.255 (маска подсети: 255.240.0.0 или /12)
192.168.0.0 — 192.168.255.255 (маска подсети: 255.255.0.0 или /16)
Также для петлевых интерфейсов (не используется для обмена между узлами сети) зарезервирован диапазон 127.0.0.0 — 127.255.255.255 (маска подсети: 255.0.0.0 или /8).
Используя эти сакральные знания приступим к рассмотрению наших адресов:
ipcalc 194.34.23.100 - мы видим, что адрес не подпадает в диапазон локальных (см нижнюю строку вывода - Hosts/Net:). По своему опыту скажу, что несколько моих серверов в московском дата-центре имеют похожий ip, начинающийся с 194.61. Стало быть, адрес этот вовсе не локальный.
ipcalc 127.0.0.2
Выдаёт нам, что
Hosts/Net: 254 Class A, Loopback
О чём нетрудно догадаться любому, кто крутил веб-приложения на локальном ip 127.0.0.1.
ipcalc 127.1.0.1 - та же история.
А вот сеть 128.0.0.1
ipcalc 128.0.0.1
Имеет класс B и loopback-ом не является.
По каждому варианту скрин, отчёт, и погнали дальше...
Читаем гугл: "Публичным IP адресом называется IP адрес, который используется для выхода в Интернет. Адреса, используемые в локальных сетях, относят к частным."
1) какие из перечисленных IP можно использовать в качестве публичного, а какие только в качестве частных: 10.0.0.45, 134.43.0.2, 192.168.4.2, 172.20.250.4, 172.0.2.1, 192.172.0.1, 172.68.0.2, 172.16.255.255, 10.10.10.10, 192.169.168.1
Натравим ipcalc на каждый их адресов и снова смотрим самую нижнюю строчку. Если её вывод оканчивается словами Private Internet, значит ip частный, если же в выводе пишется что-либо другое, значит ip можно использовать для выхода в интернет.
Loopback тоже не может быть интернет-адресом, однако их в задании нет.
Скрин, отчёт, погнали дальше.
2) какие из перечисленных IP адресов шлюза возможны у сети 10.10.0.0/18: 10.0.0.1, 10.10.0.2, 10.10.10.10, 10.10.100.1, 10.10.1.255
Смотрим вывод команды
ipcalc 10.10.0.0/18 -b
И видим наш диапазон:
HostMin: 10.10.0.1
HostMax: 10.10.63.254
Всё что входит в него, а именно:
10.10.0.2
10.10.10.10
Могут войти в нашу сеть. Как мы знаем, нулевой ip каждой подсети это идентификатор, а ip, заканчивающийся на 255 - широковещательный адрес подсети. Поэтому IP 10.10.1.255 не подходит в качестве адреса.
Для настройки статической маршрутизации между двумя машинами нам нужно:
- Настроить внутреннюю сеть между машинами
- Задать каждой машине статический IP-адрес
Чтобы настроить внутреннюю сеть нам необходимо, чтобы обе машины (ws1 и ws2) были выключены. В настройках virtualbox заходим в сеть и выбираем адаптер "Внутренняя сеть". Называем как-нибудь эту сеть, например, lan1.
На второй машине так же подключаемся к этой внутренней сети.
Затем включаем машины и логинимся через окно virtualbox-а.
Вводим
sudo netplan apply
затем
sudo netplan try
И проверяем что настройки применились:
ip a
То же самое повторяем для второй машины, но с IP 172.24.116.8 и маской /12.

