
# Настройка cети с IPv6
- План работы
**Цель практической работы:**
- Научиться основам работы с IPv6.
**Задача:**
1. Объяснить структуру IPv6;
2. Что такое зарезервированные IPv6 адреса;
3. Что такое глобальные IPv6 адреса;
4. Как узнать IPv6 адрес сайта;
5. Как открыть IPv6 в веб-браузере;
6. Как в IPv6 посмотреть ARP таблицу;
7. Как настроить свою систему на работу с DNS по IPv6;
8. Как посчитать сколько IPv6 адресов в подсети;
9. Показать IPv6 маршрутов в локальной системе;
10. Как отключить и включить IPv6;
11. Как посмотреть настройки IPv6;
12. Ping между двумя linux машинками по ipv6;
13. Как настроить SSH для работы только с IPv6.
### Защита:
- Продемонстрировать все пункты из задачи
# 6.1 IPv6
IPv6 (Internet Protocol version 6) - это последняя версия Интернет-протокола, используемая для передачи данных в Интернете между устройствами.
IPv6 использует 128-битные адреса вместо 32-битных адресов, используемых в IPv4. Это позволяет создать огромное количество уникальных IP-адресов, что является необходимым для увеличения числа устройств, подключенных к Интернету, и для создания новых сервисов в Интернете. IPv6 также обеспечивает более безопасные, надежные и эффективные соединения в Интернете.
## 6.1.1 Структура IPv6
Адреса IPv6 в полной форме отображаются как восемь четырёхзначных шестнадцатеричных чисел (то есть восемь групп по четыре символа), разделённых двоеточием. Ниже приведен пример:

Полная запись может быть сокращена используя несколько методов нотации, к примеру,адрес **2001:0db8:AAAA:1111:0000:0000:0000:0100** равнозначен адресу **2001:db8::AAAA:1111::100**
## 6.1.2 Зарезервированные IPv6 адреса
Рассмотрим диапазоны IPv6 адресов для целевого назначения, чтобы мы могли сразу отфильтровывать их из многочисленных IPv6 адресов сетевых интерфейсов.
Таблица «Специальные блоки адресов IPv6»:

## 6.1.3 Глобальные IPv6 адреса
Соответствуют публичным IPv4-адресам. Могут находиться в любом не занятом диапазоне. В настоящее время региональные интернет-регистраторы распределяют блок адресов 2000::/3 (с 2000:: по 3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF).
Это означает, что глобальными сейчас являются только IPv6 адреса, которые начинаются на «2» или на «3».
## 6.1.4 Как узнать IPv6 адрес сайта
IP адрес сайта храниться в A записях, а IPv6 адрес сайта хранятся в записях AAAA
В Windows IPv6 адрес сайта можно узнать командой nslookup: nslookup (адрес сайта)

Если у сайта есть IPv6 адрес, то он будет выведен вместе с IP адресами.
В Linux также можно использовать команду nslookup: nslookup (адрес сайта)

Сравним с онлайн сервисом, который показает вам все IP и IPv6 адреса любого сайта

Просмотр IPv6 сайта через host

Теперь, когда мы научились смотреть и узнавать IPv6 адреса, давайте научимся использовать их в различных приложениях и утилитах.
Команда dig также умеет показывать IPv6 адреса, но по умолчанию выводит данные только для A записи, поэтому нужно указать вид записи явно:

Далее настроим вывод всех DNS записей данного домена

## 6.1.5 Как открыть IPv6 в веб-браузере
Для использования IPv6 адреса в URL его достаточно поместить в квадратные скобки.
Далее запустим на Kali Linux веб-сервер Apache и зайдём на него.

## 6.1.6 Как в IPv6 посмотреть ARP таблицу
Просмотр ARP-таблицы. В моём случае роутер не поддерживает IPv6.

## 6.1.7 Как настроить свою систему на работу с DNS по IPv6
Даже если ваш компьютер подключён к IPv6 сети, то, скорее всего, в качестве DNS серверов указаны IP четвёртой версии. Если вы хотите, чтобы DNS запросы также делались по протоколу IPv6, то в дополнение к имеющимся записям добавьте также IPv6 адреса DNS серверов.
Необходимо зайти в /etc/resolv.conf и добавить соответсвующие строки.

## 6.1.8 Как посчитать сколько IPv6 адресов в подсети
**Посчитать количество IPv6 в подсети можно по формуле:**
Предположим, дана IPv6 сеть: 2604:A880::/32, сколько в этой сети IPv6 адресов?
**Считаем:**
$2^{(128-длина.маски)}$.
Допустим, что у нас есть сеть 2604:A880::/32. Посчитаем количество адресов в этой сети.
Количество адресов в сети: $2^{128-32}=7,922816251*10^{28}$
## 6.1.9 Показать IPv6 маршруты локальной системе
Чтобы вывести список IPv6 маршрутов в Linux выполните команду:`ip -6 route show`
Или сокращённый вариант этой команды:`ip -6 ro`
Чтобы показать маршрут по умолчанию IPv6 выполните команду:`ip -6 route show default`

## 6.1.10 Как отключить и включить IPv6
Для отключения IPv6 в Linux выполните команды:
`sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1`
`sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1`

Данные настройки действуют до следующей перезагрузки компьютера.
Чтобы сделать настройки постоянными, выполните следующие команды:
`sudo -i`
`echo 'net.ipv6.conf.all.disable_ipv6=1' >> /etc/sysctl.d/sysctl.conf`
`echo 'net.ipv6.conf.default.disable_ipv6=1' >> /etc/sysctl.d/sysctl.conf`

Чтобы сделанные изменения вступили в силу выполните команду: `sysctl –p`
Чтобы проверить, отключён ли IPv6 на уровне операционной системы, выполним следующие команды:
0 - включен
1 - отключен
`sysctl -n net.ipv6.conf.all.disable_ipv6`
`sysctl -n net.ipv6.conf.default.disable_ipv6`

Для того чтобы включить заного IPv6,необходимо прописать все те же самые команды, заменив 1 на 0.
## 6.1.11 Как посмотреть настройки IPv6
В системе имеется множество других опций IPv6 для тонкой конфигурации и включения или отключения определённых функций IPv6.
Просмотр текущих настроек IPv6 в Linux.

## 6.1.12 Ping между двумя linux машинками по IPv6
Выполним ping между двумя машинками Linux по IPv6:
Просмотр ip-адреса Kali Linux

Просмотр ip-адреса Ubunta

Ping между двумя машинками Linux

## 6.1.13 Как настроить SSH для работы только с IPv6.
В системе может быть несколько сетевых интерфейсов с несколькими IP адресами, по умолчанию sshd прослушивает их все, в том числе IPv6 адреса:
Настройка SSH сервера выполняется в файле `/etc/ssh/sshd_config`.
Директивой ListenAddress вы также можете указать конкретный IP, который будет прослушиваться в ожидании подключений. А опцией AddressFamily вы можете выбрать для прослушивания все адреса, только IPv4 или только IPv6:
**Варианты:**
- any (по умолчанию — любые адреса),
- inet (использовать только IPv4),
- inet6 (использовать только IPv6),

Делаем перезагрузку SSH-сервера и проверяем его статус.

Подключение к SSH-серверу

**Для чего нужно ограничивать прослушиваемые адреса только протоколом IPv6?**
Многие автоматические сканеры по умолчанию сканируют порты только для IPv4 адресов, полностью игнорируя IPv6. До сих пор довольно много пользователей, в том числе и хакеров, у которых нет доступа к IPv6. Если же у вашего Интернет-провайдера имеется поддержка IPv6, то перейдя на SSH с протоколом IPv6 вы значительно ограничите доступ к вашему SSH серверу для автоматических сканеров и резко сократите количество попыток взлома брут-форсом (подбором пароля).
## **Вывод:**
*В данной практике научились базовым настройках сети с помощью IPv6.*
# 6.2 **MAC-адресация в Linux**
### **Цель работы:**
- Понять, что такое mac-адрес;
- Научиться работать с mac-адрресами.
### **Задача:**
1. Что такое mac-адрес (продемонстрировать и пояснить);
2. Как в Windows по MAC-адресу определить производителя (продемонстрировать);
3. Как в Linux по MAC-адресу определить производителя устройства (продемонстрировать);
4. Как узнать свой MAC-адрес в Windows (продемонстрировать);
5. Как узнать свой MAC-адрес в Linux (продемонстрировать);
6. Как в Linux сделать так, чтобы MAC подменялся при каждом подключении (продемонстрировать);
- при соединении с одной и той же сетью использовался одинаковый MAC;
- каждый раз разные MAC даже для одних и тех же сетей;
7. Как установить определённый MAC (продемонстрировать);
8. Измените MAC-адрес с помощью iproute2 (продемонстрировать).
## 6.2.1 Что такое mac-адрес (продемонстрировать и пояснить)
MAC-адрес (ещё называют физический адрес) – это уникальный идентификатор сетевого интерфейса в локальной сети. Одно устройство (компьютер, роутер) может иметь несколько сетевых интерфейсов (проводных и беспроводных) и, следовательно, иметь несколько MAC-адресов.
Пример MAC-адреса 50:46:5D:6E:8C:20, также распространены такие варианты записи как 50-46-5D-6E-8C-20 и 50465D6E8C20. Т.е. MAC-адрес состоит из шести пар символов (их называют октетами). В эти символы входят все цифры и буквы от A до F (набор символов шестнадцатеричной записи).
Первые три октета (бита) содержат уникальный идентификатор организации (OUI) или код MFG (Manufacturing, производителя), который производитель получает в IEEE. Т.е. они уникальны для каждого производителя сетевых устройств и каждый производитель, присваивая MAC-адрес своему сетевому устройству, начинает его со своих трёх октетов. Именно по ним, зная MAC-адрес, можно определить производителя. Последние три октета производитель присваивает произвольно и, в отличии от первых трёх, они должны быть уникальны для каждого сетевого интерфейса.
Стоит отметить,что в первом октете используется только 6 старших разрядов. Два младших разряда имеют специальное значение:
Нулевой бит - используется multicast или unicast.
Первый бит - говорит о том, глобальный ли MAC-адрес, или локальный.
Следующие три октета выбираются изготовителем для каждого экземляра устройства.

## 6.2.2 Как в Windows по MAC-адресу определить производителя
В Windows для определения вендора (производителя) устройства по MAC-адресу есть бесплатная программа MACAddressView.
Можно искать по MAC-адресу, название производителя компании, адрес компании, страну компании, все MAC-адреса.
Вывод MAC - адреса интерфейса.

Определение по MAC-адресу производителя, название компании, адрес компании и страну компании.

## 6.2.3 Как в Linux по MAC-адресу определить производителя устройства
База с уникальными идентификаторами организаций (OUI) обычно уже присутствует в системах Linux, поскольку её используют различные программы.Выполним поиск этого файла:

Скачиваем базу:

База представляет собой обычный текстовый файл, по которому мы можете искать различными удобными вам способами.
Просмотр содержимого файла.

Выполним небольшой скрипт, который может также помочь. Создадим файл oui.sh и скопируем в него скрипт:

Вывод информации о производителе сетевого интерфейса.

## 6.2.4 Как узнать свой MAC-адрес в Windows
Чтобы узнать свой MAC-адрес в Windows из командной строки, откройте командную строку.
Первая команда показывает краткую информацию о всех MAC-адресах системы, при этом не всегда просто сориентироваться, какому именно интерфейсу соответствует конкретный MAC-адрес.

Вторая команда выводит более расширенную информацию о подключении, по ней можно сориентироваться, какой физический адрес (MAC) какому именно интерфейсу принадлежит.


## 6.2.5 Как узнать свой MAC-адрес в Linux
В Linux есть несколько способов узнать свой MAC-адрес.
Вывод списка адресов без дополнительных подробностей:

Данная команда выводит информацию о текущем значении MAC и постоянный MAC-адрес устройства:

MAC-адрес располагается в строках, перед которыми стоит «link/ether». Если MAC-адрес был изменён, то текущее значение показывается после «link/ether», а постоянное значение после «permaddr».
ЧТобы показать информацию о статусе соединений, в том числе MAC-адрес:

Чтобы посмотреть MAC-адрес беспроводных интерфейсов:

Ещё способ узнать ip-адрес в сети является NMAP, который позволяет просканировать одно устройство или сразу сеть и показать параметры, в том числе mac-адрес:

Следующий способ – это утилита arp-scan:

## 6.2.6 Как в Linux сделать так, чтобы MAC подменялся при каждом подключении
**При соединении с одной и той же сетью использовался одинаковый MAC;**
Если мы хотим, чтобы при каждом подключении подменялся MAC-адрес, но при этом при соединении с одной и той же сетью использовался одинаковый MAC, то в файл /etc/NetworkManager/conf.d/mac.conf:
Добавим необходимые строки.

Строки с ethernet.cloned-mac-address и wifi.cloned-mac-address можно добавлять по отдельности или вместе.

### **Разные MAC-адресса:**
Прописываем в файл строки: random

Узнаем MAC-адрес интерфейса, переподключимся к то же сети и заметим, что MAC-адрес изменился

## 6.2.7 Как установить определённый MAC.
Для того, чтобы установить определённый MAC-адрес необходимо выполнить команды.

## 6.2.8 Изменить MAC-адрес с помощью iproute2.
Мы будем использовать программу ip, которая включена в пакет iproute2.
Начнём с проверки текущего MAC адреса командой:
В данный момент нас интересует часть, которая следует после «link/ether» и представляет 6-байтовый номер. Он будет выглядеть примерно так:

Первый шаг для спуфинга MAC адреса – это перевести интерфейс в состояние down. Это выполняется командой:

Далее мы переходим непосредственно к спуфингу MAC. Можно использовать любое шестнадцатеричное значение, но некоторые сети могут быть настроены не назначать IP адреса клиентам, чей MAC адрес не соответствует какому-либо известному вендору (производителю). В этих случаях, чтобы вы могли успешно подключиться к сети, используйте префикс MAC любого реального вендора (первые три байта) и используйте произвольные значения для последующих трёх байт.
Для изменения MAC нам нужно запустить команду:

Последним шагом мы возвращаем интерфейс в состояние up. Это можно выполнить командой вида:

## Вывод
В данной практической работе мы научились работать с mac-адресами.
# 6.3 Tor браузер
## 6.3.1 Скачать браузер Tor для Windows
Необходимо установить VPN подключение и скачать установщик Tor.

Выберем "Скачать для Windows". После скачивания нас поблагодарят за это.

Запуск установщика через Windows PowerShell.

Выбор места установки.

Завершение установки.

Автоматически запущенный Tor браузер, после окончания установки.
Стартовая страница Tor браузера.

Закроем браузер и выполним запуск через WIndows PowerShell.


## 6.3.2 Скачать Tor browser на Linux
Для того чтобы установить и запустить Tor браузер на вирутальной машине Linux:
1. Необходимо включить на хостовой системе VPN.
2. Установить тип подключения NAT на вирутальной машине Linux.
3. Открыть браузер на виртуальной машине Linux и перейти по ссылке https://www.torproject.org/ru/download/
4. Скачать Tor браузер для Linux
5. Разархивировать материалы из скаченного архива
6. Выполнить запуск Tor браузера.
Стартовая страница Tor браузер.

Скачивание Tor браузера


Разархивируем файл.


Запуск Tor браузера.

Стартовая страница запущенного Tor браузера

## Вывод
В данной практической работе,мы научились устанавливать браузер Tor на ОС Windows и Linux.
# Заключение
Таким образом в ходе практической работы, мы изучили и научились базовым настройках сети с помощью IPv6. Научились работать с mac-адресами,а также установили браузер Tor на ОС Windows и Linux.