IP адреса
Определение
Определение
Определение
Задача 1
Ручное решение
Модуль ipaddress
Программное решение
Задача 2
Задача 2
Задача 3
Задача 3
Задача 4
Задача 4
Задача 5
Задача 5
Задача 6
Задача 6
Задача 7
Задача 7
Задача 8
Задача 8
Задача 9
Задача 9
Задача 10
Задача 10
Задача 11
Задача 11
Задача 12
Задача 12
Задача 13
Задача 13
Задача 14
Задача 14
Задача 15
Задача 15
Задача 16
Задача 16
Задача 17
Задача 17
Задача 18
Задача 18
Задача 19
Задача 19
Задача 20
Задача 20
Задача 21
Задача 21
Задача 22
Задача 22
Задача 23
Задача 23
Задача 24
Задача 24
Задача 25
Задача 25
Задача 26
Задача 26
Задача 27
Задача 27
Задача 28
Задача 28
Задача 29
Задача 29
Задача 30
Задача 31
Задача 32
Задача 33
Задача 34
Задача 35
Ответы 30-35
Задача 36
Задача 36
400.34K
Категория: ИнтернетИнтернет

Занятие 2.4

1. IP адреса

2. Определение

• IP-адрес (IPv4)
• Формат: 4 октета по 8 бит = 32 бита
• Вид: XXX.XXX.XXX.XXX (каждое число от 0 до 255)
• Пример: 192.168.1.1
• В двоичном виде:
• 11000000.10101000.00000001.00000001
• Быстрый перевод:
• '.'.join(f'{x:>08b}' for x in [192,168,1,1])

3. Определение

• Маска подсети
• Назначение: отделяет адрес сети от адреса узла
• /8
• /255.0.0.0 /11111111.00000000.00000000.00000000
• /16
• /255.255.0.0 /11111111.11111111.00000000.00000000
• /26
• /255.255.255.192 /11111111.11111111.11111111.11000000
• Сначала все единицы, затем нули
• Формула количества адресов: 2^(32-n), где n — префикс

4. Определение

• Адреса сети = IP-адрес AND Маска (побитовое И)

5. Задача 1


В терминологии сетей TCP/IP маской сети называют двоичное число, которое
показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая к адресу узла в этой сети. Адрес сети получается в результате применения
поразрядной конъюнкции к заданному адресу узла и маске сети.
• По заданным IP-адресу узла сети и маске определите
адрес сети:
• IP-адрес: 10.8.248.131
• Маска: 255.255.224.0
• При записи ответа выберите из приведённых в таблице
чисел 4 фрагмента четыре элемента IP-адреса и запишите
в нужном порядке соответствующие им буквы без точек.

6. Ручное решение

7. Модуль ipaddress

• Встроенный модуль Python для работы с IPадресами и сетями.
• Позволяет создавать объекты IP-адресов и сетей,
автоматически вычисляет адрес сети, маску,
широковещательный адрес, количество хостов..
Умеет проверять принадлежность адреса сети.
Для задач ЕГЭ удобен тем, что одной строкой
ip_network("IP/маска", 0) сразу даёт адрес сети и
все параметры.

8. Программное решение

• from ipaddress import *
• net = ip_network("10.8.248.131/255.255.224.0",0)
• print(net) #10.8.224.0/19 выводит адрес сети
• # сопоставить числа в адресе сети с буквами из
таблицы

9. Задача 2

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP адресом 118.193.30.139 адрес сети равен
118.193.24.0. Чему равно значение третьего слева байта
маски? Ответ запишите в виде десятичного числа.

10. Задача 2

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"118.193.30.139/{mask}",0)
print(net, net.netmask)
• # 248

11. Задача 3

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP-адресом 154.201.208.17 адрес сети равен
154.201.192.0. Чему равно наибольшее возможное
значение третьего слева байта маски? Ответ запишите в
виде десятичного числа.

12. Задача 3

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"154.201.208.17/{mask}",0)
print(net, net.netmask)
• # 224

13. Задача 4

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP адресом 122.21.49.91 адрес сети равен
122.21.48.0. Найдите наименьшее возможное количество
единиц в двоичной записи маски подсети.

14. Задача 4

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"122.21.49.91/{mask}",0)
print(net, net.netmask)
• # 20

15. Задача 5

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP адресом 173.103.25.118 адрес сети равен
173.103.24.0. Найдите наибольшее возможное количество
нулей в двоичной записи маски подсети.

16. Задача 5

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"173.103.25.118/{mask}",0)
print(net, net.netmask)
• #количество нулей равно 32-количество единиц, чем
меньше 1, тем больше 0

17. Задача 6

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP адресом 158.116.11.146 адрес сети равен
158.116.0.0. Для скольких различных значений маски это
возможно?

18. Задача 6

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"158.116.11.146/{mask}",0)
print(net, net.netmask)
• #7

19. Задача 7

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для узла с IP адресом 191.173.145.240 адрес сети равен
191.173.144.0. Чему равно наименьшее количество
возможных адресов в этой сети?

20. Задача 7

• from ipaddress import *
• for mask in range(33):
net = ip_network(f"191.173.145.240/{mask}",0)
print(net, net.netmask, net.num_addresses)
• # 512

21. Задача 8

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Для некоторой подсети используется маска 255.255.240.0.
Сколько различных адресов компьютеров теоретически
допускает эта маска, если два адреса (адрес сети и
широковещательный) не используют?

22. Задача 8

• from ipaddress import *
• net = ip_network(f"0.0.0.0/255.255.240.0",0)
• print(net, net.netmask, net.num_addresses)
• # 4094

23. Задача 9

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Два узла, находящиеся в одной сети, имеют IP-адреса
165.112.200.70 и 165.112.175.80. Найдите наибольшее
возможное количество единиц в двоичной записи маски
подсети.

24. Задача 9

• from ipaddress import *
• for mask in range(33):
net1 = ip_network(f"165.112.200.70/{mask}",0)
net2 = ip_network(f"165.112.175.80/{mask}",0)
if net1 == net2:
• # 17
print(net1, net1.netmask)

25. Задача 10

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Два узла, находящиеся в разных подсетях, имеют IPадреса 10.96.180.231 и 10.96.140.118. В масках обеих
подсетей одинаковое количество единиц. Найдите
наибольшее возможное количество нулей в двоичной
записи маски подсети.

26. Задача 10

• from ipaddress import *
• for mask in range(33):
net1 = ip_network(f"10.96.180.231/{mask}",0)
net2 = ip_network(f"10.96.140.118/{mask}",0)
if net1 != net2:
• # 13
print(net1, net1.netmask)

27. Задача 11

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Сеть задана IP-адресом 192.168.240.0 и маской сети
255.255.255.0. Сколько в этой сети IP-адресов, для которых
количество единиц и нулей в двоичной записи IP-адреса
одинаково?
• В ответе укажите только число.

28. Задача 11

• from ipaddress import *
• k=0
• net1 = ip_network(f"192.168.240.0/255.255.255.0",0)
• for ip in net1:
if f"{ip:b}".count("1") == f"{ip:b}".count("0"):
k += 1
• print(k) #8

29. Задача 12

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IPадреса узла сети относится к адресу сети, а какая - к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Сеть задана IP-адресом 10.48.96.0 и маской сети
255.255.240.0. Сколько в этой сети IP-адресов, для которых
количество единиц в двоичной записи IP-адреса больше,
чем количество нулей?
• В ответе укажите только число.

30. Задача 12

• from ipaddress import *
• k=0
• net1 = ip_network(f"10.48.96.0/255.255.240.0",0)
• for ip in net1:
if f"{ip:b}".count("1") > f"{ip:b}".count("0"):
k += 1
• print(k) #13

31. Задача 13

• В терминологии сетей TCP⁠
/IP маской сети называют двоичное число,
которое показывает, какая часть IP⁠
-адреса узла сети относится к
адресу сети, а какая — к адресу узла в этой сети. Адрес сети
получается в результате применения поразрядной конъюнкции к
заданному адресу узла и его маске.
• Широковещательным адресом называется специализированный
адрес, в котором на месте нулей в маске стоят единицы. Адрес сети и
широковещательный адрес не могут быть использованы для
адресации сетевых устройств.
• Сеть задана IP⁠
-адресом одного из входящих в неё узлов 191.128.66.83
и сетевой маской 255.192.0.0.Найдите в данной сети наибольший IP⁠
адрес, который может быть назначен компьютеру. В ответе укажите
найденный IP-адрес без разделителей.
• Например, если бы найденный адрес был равен 111.22.3.44, то в
ответе следовало бы записать: 11122344.

32. Задача 13

• from ipaddress import *
• net = ip_network('191.128.66.83/255.192.0.0', 0)
• print(str(net[-2]).replace('.',‘’))
• # 191191255254

33. Задача 14

• В терминологии сетей TCP/IP маской сети называют
двоичное число, которое показывает, какая часть IP⁠
а⁠дреса узла сети относится к адресу сети, а какая — к
адресу узла в этой сети. Адрес сети получается в
результате применения поразрядной конъюнкции к
заданному адресу узла и маске сети.
• Сеть задана IP⁠
-⁠
адресом 172.16.168.0 и маской сети
255.255.248.0.
• Сколько в этой сети IP⁠
-⁠
адресов, для которых количество
единиц в двоичной записи IP⁠
-⁠
адреса не кратно 5?
• В ответе укажите только число

34. Задача 14

• from ipaddress import *
• net = ip_network(f'172.16.168.0/255.255.248.0', 0)
• cnt = 0
• for ip in net:
s = f'{ip:b}'
if s.count('1') % 5 != 0:
cnt += 1
• print(cnt)
• # 1663

35. Задача 15

• В терминологии сетей TCP⁠
/⁠
IP маской сети называют двоичное число,
которое показывает, какая часть IP⁠
-адреса узла сети относится к
адресу сети, а какая — к адресу узла в этой сети.
• Адрес сети получается в результате применения поразрядной
конъюнкции к заданному адресу узла и его маске.
• Широковещательным адресом называется специализированный
адрес, в котором на месте нулей в маске стоят единицы.
• Адрес сети и широковещательный адрес не могут быть использованы
для адресации сетевых устройств.
• Сеть задана IP-адресом одного из входящих в неё узлов 98.81.154.195
и сетевой маской 255.252.0.0.Найдите наибольший в данной сети IPадрес, который может быть назначен компьютеру. В ответе укажите
найденный IP-адрес без разделителей.
• Например, если бы найденный адрес был равен 111.22.3.44, то в
ответе следовало бы записать 11122344.

36. Задача 15

• from ipaddress import *
• net = ip_network('98.81.154.195/255.252.0.0', 0)
• print(str(net[-2]).replace('.',''))
• # 9883255254

37. Задача 16

• Сеть задана IP-адресом 142.108.56.118 и маской
сети 255.255.255.240. Сколько в этой сети IPадресов, для которых в двоичной записи IPадреса суммарное количество единиц в левых
двух байтах меньше суммарного количества
единиц в правых двух байтах?
• В ответе укажите только число.

38. Задача 16

• from ipaddress import *
• k=0
• net = ip_network('142.108.56.118/255.255.255.240',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.’)]
if m[0]+m[1]<m[2]+m[3]:
k += 1
• print(k)
• #5

39. Задача 17

• Сеть задана IP-адресом 116.29.170.89 и маской
сети 255.255.255.224. Сколько в этой сети IPадресов, для которых в двоичной записи IPадреса суммарное количество единиц в левых
двух байтах не менее суммарного количества
единиц в правых двух байтах?
• В ответе укажите только число.

40. Задача 17

• from ipaddress import *
• k=0
• net = ip_network('116.29.170.89/255.255.255.224',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]>=m[2]+m[3]:
k += 1
• print(k)
• # 26

41. Задача 18

• Сеть задана IP-адресом 23.140.159.160 и маской
сети 255.255.252.0. Сколько в этой сети IPадресов, для которых в двоичной записи IPадреса суммарное количество единиц в левых
двух байтах не менее суммарного количества
единиц в правых двух байтах?
• В ответе укажите только число.

42. Задача 18

• from ipaddress import *
• k=0
• net = ip_network('23.140.159.160/255.255.252.0',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]>=m[2]+m[3]:
k += 1
• print(k)
• # 176

43. Задача 19

• Сеть задана IP-адресом 253.112.169.12 и
маской сети 255.255.254.0. Сколько в этой
сети IP-адресов, для которых в двоичной
записи IP-адреса суммарное количество
единиц в правых двух байтах не менее
суммарного количества единиц в левых двух
байтах? В ответе укажите только число.

44. Задача 19

• from ipaddress import *
• k=0
• net = ip_network('253.112.169.12/255.255.254.0',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[2]+m[3]>=m[0]+m[1]:
k += 1
• print(k) # 46

45. Задача 20

• Cеть задана IP-адресом 252.67.33.87 и маской
сети 255.252.0.0. Сколько в этой сети IP-адресов,
для которых в двоичной записи IP-адреса
суммарное количество единиц в правых двух
байтах более чем вдвое превосходит суммарное
количество единиц в левых двух байтах?
• В ответе укажите только число.

46. Задача 20

• from ipaddress import *
• k=0
• net = ip_network('252.67.33.87/255.252.0.0',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[2]+m[3]>2*(m[0]+m[1]):
k += 1
• print(k) #17

47. Задача 21

• Cеть задана IP-адресом 249.0.33.87 и маской сети
255.252.0.0. Сколько в этой сети IPадресов, для
которых в двоичной записи IP-адреса суммарное
количество единиц в правых двух байтах более
чем вдвое превосходит суммарное количество
единиц в левых двух байтах?
• В ответе укажите только число

48. Задача 21

• from ipaddress import *
• k=0
• net = ip_network('249.0.33.87/255.252.0.0',0)
• for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[2]+m[3]>2*(m[0]+m[1]):
k += 1
• print(k) # 731

49. Задача 22

• Сеть задана IP-адресом 255.211.33.160 и маской
сети 255.255.A.0, где A – некоторое допустимое
для записи маски число. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

50. Задача 22


from ipaddress import *
for i in range(9):
A = int('1'*i + '0'*(8-i),2)
norm = 1
net = ip_network('255.211.33.160/255.255.'+str(A)+'.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
norm = 0
break
if norm:
print(A) # 240
break

51. Задача 23

• Сеть задана IP-адресом 191.239.130.3 и маской
сети 255.255.A.0, где A – некоторое допустимое
для записи маски число. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

52. Задача 23


from ipaddress import *
for i in range(9):
A = int('1'*i + '0'*(8-i),2)
norm = 1
net = ip_network('191.239.130.3/255.255.'+str(A)+'.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
norm = 0
break
if norm:
print(A) # 224
break

53. Задача 24

• Сеть задана IP-адресом 252.63.194.3 и маской
сети 255.255.A.0, где A – некоторое допустимое
для записи маски число. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

54. Задача 24


from ipaddress import *
for i in range(9):
A = int('1'*i + '0'*(8-i),2)
fl = 1
net = ip_network('252.63.194.3/255.255.'+str(A)+'.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
fl = 0
break
if fl:
print(A) # 252
break

55. Задача 25

• Сеть задана IP-адресом 199.59.129.3 и маской
сети 255.255.A.0, где A – некоторое допустимое
для записи маски число. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

56. Задача 25


from ipaddress import *
for i in range(9):
A = int('1'*i + '0'*(8-i),2)
fl = 1
net = ip_network('199.59.129.3/255.255.'+str(A)+'.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
fl = 0
break
if fl:
print(A) # 254
break

57. Задача 26

• Сеть задана IP-адресом 32.0.A.5, где A –
некоторое допустимое для записи IP-адреса
число, и маской сети 255.255.240.0. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не более суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

58. Задача 26


from ipaddress import *
for A in range(256):
fl = 1
net = ip_network('32.0.'+ str(A)+ '.5/255.255.240.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]>m[2]+m[3]:
fl = 0
break
if fl:
print(A) #16
break

59. Задача 27

• Сеть задана IP-адресом 64.129.A.10, где A –
некоторое допустимое для записи IP-адреса
число, и маской сети 255.255.252.0. Определите
минимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не более суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

60. Задача 27


from ipaddress import *
for A in range(256):
fl = 1
net = ip_network('64.129.'+ str(A)+ '.10/255.255.252.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]>m[2]+m[3]:
fl = 0
break
if fl:
print(A) # 28
break

61. Задача 28

• Сеть задана IP-адресом 127.254.A.10, где A –
некоторое допустимое для записи IP-адреса
число, и маской сети 255.255.224.0. Определите
максимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

62. Задача 28


from ipaddress import *
for A in range(256):
fl = 1
net = ip_network('127.254.'+ str(A)+ '.10/255.255.224.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
fl = 0
break
if fl:
print(A) # 159

63. Задача 29

• Сеть задана IP-адресом 126.255.A.100, где A –
некоторое допустимое для записи IP-адреса
число, и маской сети 255.255.240.0. Определите
максимальное значение A, для которого для всех
IP-адресов этой сети в двоичной записи IP-адреса
суммарное количество единиц в левых двух
байтах не менее суммарного количества единиц в
правых двух байтах.
• В ответе укажите только число.

64. Задача 29


from ipaddress import *
for A in range(256):
fl = 1
net = ip_network('126.255.'+ str(A)+ '.100/255.255.240.0',0)
for ip in net:
m = [bin(int(x)).count('1') for x in str(ip).split('.')]
if m[0]+m[1]<m[2]+m[3]:
fl = 0
break
if fl:
print(A) # 207

65. Задача 30

• Для узла с IP-адресом 44.44.229.28 адрес сети
равен 44.44.224.0. Каково наибольшее
возможное количество единиц в разрядах маски?

66. Задача 31

• Для узла с IP-адресом 244.55.229.28 адрес сети
равен 244.0.0.0. Каково наибольшее возможное
количество нулей в разрядах маски?

67. Задача 32

• Для узла с IP-адресом 244.55.138.100 адрес сети
равен 244.55.138.96. Чему равно наименьшее
возможное значение последнего (самого
правого) байта маски? Ответ запишите в виде
десятичного числа.

68. Задача 33

• Для узла с IP-адресом 244.55.138.100 адрес сети
равен 240.0.0.0. Чему равно максимально
возможное значение первого (самого левого)
байта маски? Ответ запишите в виде десятичного
числа.

69. Задача 34

• Для узла с IP-адресом 42.118.219.133 адрес сети
равен 42.118.216.0. Каково наибольшее
возможное количество единиц в разрядах маски?

70. Задача 35

• Для узла с IP-адресом 99.188.115.211 адрес сети
равен 99.188.115.192. Каково наибольшее
возможное количество единиц в разрядах маски?

71. Ответы 30-35

• 30) 21
• 31) 26
• 32) 224
• 33) 248
• 34) 22
• 35) 27

72. Задача 36

• Сеть задана IP-адресом 192.168.32.160 и маской
сети 255.255.255.240. Сколько в этой сети IPадресов, для которых сумма единиц в двоичной
записи IP-адреса чётна?
• В ответе укажите только число

73. Задача 36

• from ipaddress import *
• k=0
• net1 = ip_network(f"192.168.32.160/255.255.255.240",0)
• for ip in net1:
if f"{ip:b}".count("1")%2==0:
k += 1
• print(k) #8
English     Русский Правила