Windows. Вирусы. Ноутбуки. Интернет. Office. Утилиты. Драйверы

Уже довольно давно, мной была написана статья о сетевой установке Ubuntu, по локальной сети, без использования различных носителей, только загрузка по PXE и все. В этот раз я решил обновить статью и сделать ее ближе к современным реалиям, а главное, расширить функционал. Все будет выполняться на примере Ubuntu 14.04!

Под разные требования, должны быть и разные решения, главная загвоздка в том, что зачастую, нам требуется не одна операционная система, а несколько. Вот я и решил написать на эту тему статью. С предыдущей статьей, можно ознакомиться по ссылке, .
Главная идея заключаться в том что у нас появится возможность, выбирать какую операционную систему мы будем устанавливать, а также ее разрядность, фактически, у нас появится меню загрузки, после загрузки системы по локальной сети.
Все это мы реализуем, на примере, только что вышедшей Ubuntu 14.04

Для тех кто не понял, все затевается ради того чтобы появилась возможность выбора, какую операционную систему устанавливать, а также ее разрядность т.е. должно появиться меню где будут представлены все ОС доступные для установи по сети, которое будет иметь следующий вид:

Ubuntu_14.04x86
Ubuntu_14.04amd64
Для работы нам понадобится:
Обязательно!
1) Настроенный шлюз, для примера, воспользуйтесь статьей:
2) DHCP сервер, для примера, можно воспользоваться статьёй:
3) Настроенный TFTP сервер, загружающий PXE загрузчик, воспользоваться статьёй:

Опционально!
3) Дополнительным, но не обязательным моментом, может быть настроенный DNS сервер, пример есть в статье

Предполагается что у вас настроен шлюз, DHCP, TFTP севрер, а также добавлено меню загрузки PXE т.к. на этом моменте я останавливаться не буду.

Переходим к настройке инсталлируемой системы.
Для начала мы создадим пункт установки для Ubuntu 14.04x86, для чего нам понадобится установочный диск соответствующей разрядности. Нам его необходим скачать и примонтировать, для того чтобы извлечь файлы загрузчика инасталятора системы.
Т.к. файл сетевого загрузчика у нас лежат в директории директории /var/lib/tftpboot/ откуда они и подтягиваются TFTP сервером, то в ней нам нужно создать директорию Ubuntu, чтобы в нее сложить файлы с дисков установки, сделаем это:
mkdir /var/lib/tftpboot/ubuntu
В директории Uubntu мы создаем дополнительные директории для файлов загрузчика инсталлятора ОС для x86 разрядных систем и ADM64-соответсвенно.
mkdir /var/lib/tftpboot/ubuntu/x86 mkdir /var/lib/tftpboot/ubuntu/amd64

Теперь нам требуется скачать установочный диск посмотреть можно тут mirror.yandex.ru/ubuntu-releases/14.04/
Мы качнем версию х86 для сервера т.к. она меньше весит
wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-i386.iso
После завершения закачки ISO образа, нам нужно его смонтировать, чтобы извлечь нужные нам файлы, а для этого, в директории /media мы создадим директорию iso , давайте сделаем это:

Mkdir /media/iso
Монтируем образ диска в эту директорию:
sudo su
mount ubuntu-14.04-server-i386.iso /media/iso/
Система выдаст что диск смонтирован в режиме чтения:

mount: warning: /media/iso/ seems to be mounted read-only.
Идем забирать загрузчик и ядро инсталятора:
cd /media/iso/install/netboot/ubuntu-installer/i386/

Нас интересуют 2 файла linux и initrd.gz , которые нам нужно забрать и перенести в директорию /var/lib/tftpboot/ubuntu/x86
давайте скопируем их:
cp linux /var/lib/tftpboot/ubuntu/x86 cp initrd.gz /var/lib/tftpboot/ubuntu/x86

Все, установочный образ нам больше не нужен, для начала отмонтируем его из директории iso:
umount /media/iso/

После этого ISO-образ можно удалить.
Похожие действия проводим для образа установочного диска с разрядностью x64, я не буду расписывать что и куда, просто приведу листинг команд, действия все те же, только пути немного отличаются, там прописано amd64

Wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-amd64.iso

Mount ubuntu-14.04-server-amd64.iso /media/iso/

Cd /media/iso/install/netboot/ubuntu-installer/amd64/

Cp linux /var/lib/tftpboot/ubuntu/amd64 cp initrd.gz /var/lib/tftpboot/ubuntu/amd64

Umount /media/iso/

С файлами установки закончили, теперь настроим PXE меню загрузки.

Настройка меню загрузки PXE
Для начала добавим пункт меню с названием Linux Install , для этого нам нужно отредактировать файл:
nano /var/lib/tftpboot/pxelinux.cfg/default

В конец файла добавим запись:
LABEL Linux Install MENU LABEL ^Linux Install KERNEL vesamenu.c32 APPEND pxelinux.cfg/linux.menu

Как видно из записи, у нас будет другая страница с выбором дисирибутивов для установки, создадим ее:

Nano /var/lib/tftpboot/pxelinux.cfg/linux.menu

Добавим в нее названия пунктов для загрузки с возможностью выбора операционной системы для установки, пока это будет Ubuntu 14.04 x86 и amd64 архитектуры:
LABEL Install Ubuntu 14.04x86 MENU label ^Ubuntu 14.04x86 KERNEL ubuntu/x86/linux APPEND initrd=ubuntu/x86/initrd.gz LABEL Install Ubuntu 14.04amd64 MENU label ^Ubuntu 14.04amd64 KERNEL ubuntu/amd64/linux APPEND initrd=ubuntu/amd64/initrd.gz

На этом настройка закончена, можно подключать клиентскую машину и пытаться загрузиться по PXE, в результате после загрузки системы по сети, у нас появится меню такого вида:

Выбираем то что мы хотим установить, установка начнется автоматически, ну а далее только следовать указаниям инсталятора системы.
Другие операционные системы добавляются аналогичным способом.
На этом, я пожалуй и закончу на сегодня.
Ну и как всегда, если возникли вопросы прошу в комментарии, нашли ошибку пишите в личку ну или на почту.

( 2018-04-10 )

PXE это среда загрузки компьютера с помощью сетевой карты без использования локальных носителей. Возможности применения достаточно широки: от просто начальной загрузки системы, до запуска полноценных рабочих систем без использования локального диска.

Некоторое время назад автору этих строк в руки попал старенький IBM ThinkCentre S51 8171 с неисправным CD-приводом. С загрузкой с флэшки, созданной с помощью UNetBootin, так же возникли проблемы и осталась последняя надежда: загрузка инсталлятора по PXE. Далее будет кратко описан полученный опыт.

IBM ThinkCentre S51 8171 имеет очень неплохую начинку для машины 2006-го года выпуска: Pentium 4 540, 2x512MB DDR, 30GB ATA HDD. Но в 2018-м она смотрится блекло, хотя и сейчас ей можно найти множество применений. Основная проблема: процессор не поддерживает EMT64 и потому операционная система должна быть обязательно 32-битной. К счастью Ubuntu 16.04 существует в редакции i386 и было решено ставить её.

В качестве сервера загрузки решено было использовать домашний сервер под управлением Ubuntu 16.04. Для раздачи адресов в локальной сети используется isc-dhcp-server. В остальном конфигурация сервера достаточно типична. Для создания PXE-окружения нам понадобится -сервер. Мы будем использовать пакет "tftpd-hpa". Установим его, а так же (на всякий случай) tftp-клиент:

Apt-get install tftpd-hpa tftp-hpa

По умолчанию tftpd-hpa использует директорию "/var/lib/tftpboot". Если по какой-то причине необходимо это изменить то нужно соответствующим образом отредактировать файл "/etc/default/tftpd-hpa" и перезапустить сервис "tftpd-hpa". Но нас вполне устроит конфигурация по умолчанию.

Список доступным инсталляторов Ubuntu 16.04 для загрузки через PXE и сетевой установки можно найти на этой странице . Нас интересует архив под названием "netboot.tar.gz" для архитектуры i386. Скачиваем и распаковываем его в директорию tftp-сервера:

Wget http://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/installer-i386/current/images/netboot/netboot.tar.gz mkdir -p /var/lib/tftpboot/ubuntu/ tar zxfv netboot.tar.gz -C /var/lib/tftpboot/ubuntu/

На этом подготовка TFTP-сервера заканчивается и остаётся настроить DHCP-сервер. Вся конфигурация сводится к добавлению строки:

# Путь к файлу "pxelinux.0" относительно директории TFTP-сервера filename "ubuntu/pxelinux.0";

Эту строку можно добавить в описание подсети, группы хостов или даже конкретного хоста. Главное чтобы машина, ради которой это всё делается, получила нужную конфигурацию. После этого можно включить машину и выбрав загрузку по PXE приступить к установке системы. После загрузки инсталлятора установка будет происходить обычным образом, так, будто бы была произведена загрузка с "MinimalCD ".

На этом можно было бы закончить, но есть ещё интересный момент: автоматическая установка. Инсталлятор Ubuntu частично поддерживает формат конфигурации kickstart от RedHat Linux. Подробнее можно прочитать . Если есть необходимость в использовании сценария автоматической установки то сначала необходимо создать файл сценария и разместить его на веб-сервере в локальной сети, затем надо немного модифицировать файл "/var/lib/tftpboot/ubuntu/ubuntu-installer/i386/boot-screens/txt.cfg":

#append vga=788 initrd=ubuntu-installer/i386/initrd.gz --- quiet append ks=http://192.168.2.1/ks.cfg vga=788 initrd=ubuntu-installer/i386/initrd.gz --- quiet

Здесь параметр "ks=" указывает URL, по которому расположен сценарий настройки kickstart. Более детальное изучение этой темы оставим читателю.

На этом всё. Приятной работы!

Не так давно я столкнулся с ситуацией, когда потребовалось поставить windows на ноутбук по сети, т.к. других вариантов не было. Т.к. подобный опыт у меня уже был, но давно, то возникла необходимость освежить знания, хотя в итоге оказалось, что необходимо было разбираться заново =).

Вступление

Во время описания, я буду предполагать, что у нас уже есть сервер на Linux и реализована загрузка с него по pxe.

Для работы нам понадобится следующий софт:

  • hpa-tftpd
  • samba
  • pxelinux
  • dhcpd

Настройку dhcpd, pxelinux, samba мы опустим. Будут описаны только изменения, которые необходимо внести в конфигурацию этих служб.

Подготовка необходимых файлов

Для начала создадим структуру директорий в рабочей директории tftp-сервера.

mkdir /tftpboot/install

mkdir /tftpboot/install/win

cd /tftpboot

ln -s install/win win

Далее скопируем все установочные файлы и папки с диска винды в папку /tftpboot/install/win . Как вы заметите названия файлов все в верхнем регистре. Дабы исправить эту оплошность следует сделать следующее в папке /tftpboot/install/win/i386:

ls -1 |awk ‘{system(«mv «$0″ «tolower($0))}’

После этого следует скопировать из этой папки в корень tftp-сервера следующие файлы: startrom.n12, SETUPLDR.BIN (нужно его переименовать в ntldr), BOOTFONT.BIN, ntdetect.com . Они могут быть запакованы и тогда последняя буква расширения будет заменена на символ подчеркивания. Распаковать их можно будет с помощью утилиты cabextract .


floppyless = «1»
msdosinitiated = «1»
; Needed for second stage
OriSrc = «\\10.0.0.254\WINXP\win\i386″
OriTyp = «4»
LocalSourceOnCD = 1
DisableAdminAccountOnDomainJoin = 1


OsLoadOptions = «/noguiboot /fastdetect»
; Needed for first stage
SetupSourceDevice = «\Device\LanmanRedirector\10.0.0.254\WINXP\win»


; Avoid automatic format/repartition
Repartition = No
UseWholeDisk = No


ComputerName = *
ProductID=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

Естественно указываем свои данные (путь и сервер и серийник).

После этого заходим в папку i386 и распаковываем архив drivers.cab

cabextract drivers.cab

Настройка службы BINL

Надеюсь, вы уже скачали архив ris-linux по ссылке выше. Если нет, то качайте, после чего можно продолжать настройку.

Служба BINL создана для того, чтобы установщику Windows передавать драйверы сетевой карты. Да. Вот такая парадоксальная ситуация — загрузчик по сети загрузился, но в с сетью сам общаться не может, без этой службы и загруженного впоследствии драйвера.

Распаковываем архив в папку /opt (всякое лишнее ПО рекомендуется именно туда ставить). Заходим в папку. Там довольно много файлов, но не все они нам понадобятся. Итак, нам нужно отдавать драйверы сетевых карт. Для этого сначала нужно создать их список. Делается это так:

infparser.py /tftpboot/install/win/i386

Теперь можно запускать службу:

./binlsrv.py &

Кстати. Если загрузчик не будет грузиться, то для приведения его в рабочее время тут есть файл fixloader.py .

fixloader.py /tftpboot/ntldr

Настройка hpa-tftpd

Т.к. при записи пути к файлу у windows и linux используются разные слеши, то нужно сделать так, чтобы tftp -сервер понимал, что от него хотят. Для этого создаим файл /etc/tftpd.rules следующего содержания:

После этого данный файл, нужно указать серверу. Для этого редактируем его конфигурационный файл и через флаг -m указываем путь к файлу. В Gentoo этот файл зовется /etc/conf.d/in.tftpd. Находим и приводим к следующему виду строку опций запуска:

INTFTPD_OPTS=»-c -R 4096:32767 -s ${INTFTPD_PATH} -v -m /etc/conf.d/tftpd.rules»

Тут также указан еще флаг -v. Он нужен для отладки. Чтобы когда что-то пойдет не так, можно было посмотреть какие файлы были запрошены и были ли они отданы.

Настройка Samba

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

Добавляем в smb.conf примерно следующие строки:


comment = install files
path = /tftpboot/install
public = yes
writable = yes
guest only = yes

Важный момент. Должна быть выставлена глобальная опция: null passwords = true

И еще один важный момент — обратите внимание, что внутри шары должна быть хотя бы одна директория, в которой уже находятся установочные файлы. Если расшарить сразу папку с установочными файлами, то получим ошибку в самом начале установки.

Настройка pxelinux

Эта операция самая простая. Необходимо добавить в ваш pxelinux.cfg/default следующие строки:

label WinXP Home Install from Network
kernel install/win/startrom.0

Все. Уже можно загружаться и устанавливать.

Прежде всего вам потребуется компьютер с Ubuntu или с другим дистрибутивом Linux (данная инструкция написана для Ubuntu), с которого вы будете устанавливать систему (сервер загрузки по сети), и ISO образ Alternate диска с необходимой версией Ubuntu .

Настройка сервера сетевой загрузки

Для загрузки по сети потребуется установить на сервер TFTP , HTTP и DHCP сервисы, чтобы позволить второму компьютеру подключиться и загрузить все необходимые файлы.

Для установки всего необходимого лучше использовать aptitude , которая не входит в стандартную поставку Ubuntu начиная с версии 10.10. Поэтому сначала ставим aptitude через любую программу установки пакетов или командой

sudo apt-get install aptitude sudo aptitude -R install apache2 atftpd tftpd-hpa dhcp3-server

Ключ -R нужен для того, чтобы atftpd поставился без inetd сервера, который вам совершенно не нужен.

Теперь пора настроить все компоненты.

TFTP сервер

Демон, использующий эти файлы - /etc/hosts.allow и /etc/hosts.deny для ограничения доступа.

Откройте файл /etc/default/atftpd в любом текстовом редакторе с правами суперпользователя, например, так:

sudo nano / etc/ default/ atftpd

Измените первую строчку с

USE_INETD =true USE_INETD =false

Кроме этого запомните каталог, который находится в конце строчки OPTIONS . Скорее всего это будет /srv/tftp , но в старых Ubuntu может быть и /var/lib/tftpboot . Редактируем файл /etc/default/tftpd-hpa:

sudo nano / etc/ default/ tftpd-hpa

вписываем, запомненный каталог

TFTP_DIRECTORY ="/srv/tftp"

Теперь просто запустите atftpd:

sudo / etc/ init.d/ atftpd start

Теперь создайте в каталоге из OPTIONS папку ubuntu. Далее везде будем считать, что используется каталог /srv/tftp:

mkdir / srv/ tftp/ ubuntu

После этого необходимо смонтировать ваш ISO образ во вновь созданный каталог. Сделать это можно примерно такой командой:

sudo mount -o loop / home/ tux/ ubuntu-11.04 -alternate-i386.iso / srv/ tftp/ ubuntu/

Если у Вас нет ISO образа диска, но есть записанный Alternate диск, то просто вставьте его в CD/DVD привод. Диск автоматически монтируется в /media/cdrom . Дальше просто нужно создать симлинк для TFTP сервера: sudo ln -s / media/ cdrom / srv/ tftp/ ubuntu

На этом настройка TFTP закончена.

Веб-сервер Apache

Что-либо менять в настройках Apache не требуется, достаточно сделать созданный в предыдущем разделе каталог ubuntu доступным через HTTP . Для этого создайте на него симлинк из рабочей папки Apache:

sudo ln -s / srv/ tftp/ ubuntu / var/ www/ ubuntu

Если вы используете не ISO образ, а записанный диск, то выполните sudo ln -s / media/ cdrom / var/ www/ ubuntu

DHCP сервер

Всё, что осталось - это настроить правильным образом DHCP сервер. Откройте в любом текстовом редакторе с правами суперпользователя файл /etc/dhcp3/dhcpd.conf , например, командой

sudo nano / etc/ dhcp3/ dhcpd.conf

В этом файле необходимо изменить следующие настройки:

# Имя вашего внутреннего домена. Если вам это ни о чём не говорит - просто не меняйте. option domain-name "domain.ru" ; # Ваш DNS сервер, который должен использоваться на подключаемом компьютере. Чаще всего тут стоит IP адрес роутера. option domain-name-servers 192.168.0.1; # Просто раскомментируйте эту строчку authoritative; # Теперь надо определить сеть для DHCP сервера: # Сначала желаемая подсеть и маска подсети. subnet 192.168.0.0 netmask 255.255.255.0 { # Диапазон выдачи сервером адресов range 192.168.0.100 192.168.0.199; # Роутер для доступа к интернету option routers 192.168.0.1; # Какой файл загружать при сетевой загрузке - укажите именно в таком виде. filename = "ubuntu/install/netboot/pxelinux.0" ; }

После этого нужно сказать нашему DHCP серверу слушать один из интерфейсов. Для этого откройте файл /etc/default/dhcp3-server и добавьте в параметр INTERFACES имя нужного интерфейса. Например, вот так:

INTERFACES ="eth0"

Теперь нужно запустить DHCP сервер и можно будет приступать к установке. Однако перед запуском убедитесь, что в вашей сети нету ещё каких-нибудь работающих DHCP серверов. Чаще всего DHCP бывает запущен на роутерах, в этом случае надо зайти на роутер и остановить на нём этот сервис.

Итак, для запуска DHCP сервера достаточно выполнить команду

sudo / etc/ init.d/ dhcp3-server start

Теперь необходимо перевести второй компьютер в режим загрузки по сети . После этого Вы должны увидеть экран установки Ubuntu.

Установка по при помощи Minimal CD

Если вы по каким-то причинам не можете использовать полноценный диск с Ubuntu, но всё же в вашем компьютере есть CD привод и подключение к интернету, то вы можете поставить систему по сети, загрузившись с маленького диска Minimal CD .

В этом случае система поставится целиком из интернет-репозитория, а диск нужен будет только для запуска процесса установки.

В Ubuntu подключение к сети настраивается с помощью сервиса Network Manager. Чтобы подключиться к сети, достаточно пару раз кликнуть мышкой, выбрать соединение - и готово. То же самое, и даже ещё проще, при использовании проводного соединения - тут интернет подключается автоматически, как только загрузился апплет.

Но не всегда доступен графический интерфейс: после неудачной установки драйвера или очередного обновления не запускается графическая оболочка, а на серверах она и вовсе не используется. В этой небольшой инструкции будет разобрана настройка сети Ubuntu из консоли. Мы поговорим о том, как настроить получение IP-адреса по DHCP, а также настроить работу DNS. Рассмотрим ручную и автоматическую настройку, также попробуем сделать это через системные конфигурационные файлы.

Перед тем, как перейти к самим командам, давайте немного разберёмся в теории работы сети. Это нужно, чтобы вы не просто выполнили какие-то непонятные команды, а поняли всю суть того, что мы будем делать и как выполняется настройка локальной сети Ubuntu.

Компьютеры обмениваются между собой информацией с помощью пакетов. Все данные в сети интернет передаются с помощью пакетов небольшого размера. Если не углубляться в подробности, то каждый пакет содержит адрес отправителя, адрес получателя и сами данные. Эти адреса есть не что иное, как привычные нам IP-адреса. Кроме IP, у компьютера есть физический адрес, который используется для общения между компьютерами в локальной сети. Это MAC-адрес? и задается он производителем сетевой карты.

Как только компьютер подключился к сети, независимо от того проводное это соединение или беспроводное, он может общаться только с компьютерами в локальной сети и только по физическим адресам. Для того, чтобы получить доступ в Глобальную сеть, машине в ней нужно получить IP-адрес. Для этого используется протокол DHCP. Если кратко: наш компьютер спрашивает все компьютеры в локальной сети, кто здесь DHCP-сервер, DHCP ему отвечает и выдаёт IP-адрес. Таким же образом компьютер узнаёт IP маршрутизатора, через который он может получить доступ к Сети, а затем пытается найти DNS-серверы или узнать стандартные у маршрутизатора. С теорией разобрались, перейдем к практике.

Настройка сети через терминал в Ubuntu

Тут мы рассмотрим автоматическую настройку сети для Ubuntu 16.04 без Network Manager с помощью стандартных скриптов системы, которые остались от Upstart и пока всё ещё используются. Давайте сначала определим, какие шаги нам нужно предпринять, чтобы всё заработало:

  • Включаем сетевой интерфейс и подключаемся к сети;
  • Устанавливаем IP-адрес;
  • Получаем адреса DNS-серверов.

Собственно, готово. Эти шаги очень символичны, потом что система всё сделает за нас сама. Нам нужно только выполнить нужные настройки. Но сначала давайте посмотрим, какие сетевые интерфейсы подключены к системе. Мне нравится команда:

Но если хотите, можете использовать ifconfig :

В нашей системе только один интерфейс - это enp0s3, есть еще lo, но он виртуальный и указывает на эту машину.

Настройки сети находятся в файле /etc/network/interfaces.

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

Настройка динамического получения IP-адреса

Добавьте в этот файл такие строки, чтобы запускать интерфейс при загрузке и получать IP-адрес автоматически по DHCP:

auto enp0s3
iface enp0s3 inet dhcp

Синтаксис строки auto прост. Он состоит из самой команды и имени сетевого интерфейса. Рассмотрим подробнее:

$ iface интерфейс inet тип

Тип получения IP-адреса может иметь несколько значений, но нас в этой статье будут интересовать только два: dhcp и static.

После завершения настройки сохраните файл и перезапустите сетевой сервис:

Всё, если сетевой кабель подключён, и вы всё сделали правильно, Сеть будет работать.

Настройка статического адреса Ubuntu

При настройке статического IP-адреса компьютер не будет связываться с DHCP-сервером, поэтому здесь придётся указать намного больше параметров.

Содержимое нашего конфигурационного файла будет выглядеть вот так:

auto eth0
iface eth0 inet static
address 192.168.1.7
gateway 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

С первыми двумя строчками все понятно, а следующие задают параметры настройки интерфейса:

  • address - наш IP-адрес;
  • gateway - шлюз, через который будем получать доступ в интернет;
  • netmask - маска сети;
  • network - адрес сети, имеет тот же адрес, что и шлюз, только с нулем вместо единицы;
  • broadcast - широковещательный адрес сети, отправленный на него пакет придет всем компьютерам локальной сети.

Как видите, network и broadcast - это первый и последний IP-адреса сети. Теперь сохраните файл и перезапустите сеть:

sudo service networking restart

Если все параметры были указаны правильно, всё будет работать. Но если допущена хоть одна ошибка, доступ к сети вы не получите.

Это была автоматическая настройка локальной сети Гbuntu, но я ещё расскажу, как всё сделать вручную, без конфигурационных файлов.

Ручная настройка сети в Ubuntu

Предыдущий вариант хорош, если вы собираетесь его использовать постоянно, но если нужно только один раз настроить сеть через терминал, то редактировать конфигурационные файлы необязательно. Мы можем всё сделать с помощью команды ip . Дальше будет рассмотрена настройка сети вручную Ubuntu.

Эта команда используется для управления сетью и входит во все дистрибутивы по умолчанию.

Как и в предыдущем примере, смотрим сетевые интерфейсы:

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

Получение IP-адреса по DHCP

Сначала включаем интерфейс:

sudo ip link set enp0s3 up

Затем с помощью команды dhclient запрашиваем ip:

sudo dhclient enp0s3

Всё, настройка сети Ubuntu 16.04 завершена, у нас есть IP-адрес, и осталось только настроить DNS, но это мы рассмотрим ниже.

Настройка статического IP

Включаем интерфейс:

sudo ip link set enp0s3 up

Устанавливаем IP-адрес, маску сети и broadcast-адрес для нашего интерфейса:

sudo ip addr add 192.168.1.7/255.255.255.0 broadcast 192.168.1.255 dev enp0s3

Указываем IP-адрес шлюза:

sudo ip route add default via 192.168.1.1

Здесь 192.168.1.7 - наш IP-адрес, 255.255.255.0 - маска сети, 192.168.1.255 - широковещательный адрес. Замените эти значения на свои.

Как видите, сеть работает. Если хотите поэкспериментировать на машине с рабочей сетью, её можно сбросить командой:

sudo ip -4 addr flush dev enp0s3

Настройка DNS

Служба DNS используется для преобразования доменных имен сайтов в IP-адреса. При получении IP-адреса автоматически через DHCP мы используем правильные DNS-серверы, но если мы выбрали статический IP, то DNS можно и не получить, поэтому придётся сделать всё вручную.

Если вам нужно настроить DNS так, чтобы он не сбивался после перезагрузки, необходимо использовать систему настройки сети Ubuntu. Для этого откройте файл /etc/network/interfaces и добавьте в него строчку после директив для нужного интерфейса:

dns-nameservers 8.8.8.8 4.4.4.4

Здесь 8.8.8.8 и 4.4.4.4 это IP-адреса DNS серверов, можете заменить их на свои. И можно использовать один, а не два. Дальше сохраните файл и перезапустите сеть:

sudo service networking restart

Если же вам нужно настроить DNS только для этого сеанса, то добавьте строчку в /etc/resolv.conf

sudo vi /etc/resolv.conf

nameserver 8.8.8.8
nameserver 4.4.4.4

После сохранения файла сеть будет работать полностью так, как нужно. Но последний способ пригоден только до перезагрузки, поскольку файл /etc/resolv.conf генерируется автоматически.

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter
ПОДЕЛИТЬСЯ: