Как включить частную сеть на рабочем сервере?

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

Данный мануал научит вас это делать.

1: Отключение сервера

Чтобы не повредить данные при включении частной сети, ненадолго отключите свой сервер.

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

Для этого подключитесь к серверу как root или пользователь с привилегиями sudo:

ssh sudo-user@your_server_ip_address

После этого отключите сервер:

shutdown -h now

После этого можете перейти в панель управления сервером.

2: Включение частной сети

Остановив свой сервер, откройте панель управления. Как правило, настройки частной сети находятся в разделах типа Сеть, Сетевая конфигурация, Networking и т.п. В этом разделе найдите Частная сеть и нажмите Включить.

Примечание: Если вы отключили свой сервер из командной строки, вам, возможно все равно придется нажать кнопку «Выключить» в панели управления.

Это включит частную сеть и присвоит серверу внутренний IP-адрес. Когда появится внутренний IP-адрес, вы сможете включить сервер.

Эта информация вам понадобится далее, при редактировании конфигурации сервера.

3: Настройка сетевого интерфейса сервера

Как только сервер будет включен, снова подключитесь к нему по SSH, чтобы добавить настройки частной сети.

ssh sudo-user@your_server_ip_address

Параметры конфигурации отличаются в зависимости от операционной системы сервера. Найдите соответствующий раздел и выполните его инструкции.

Настройка частной сети в Ubuntu 16.04+

Включив поддержку частной сети и снова включив сервер Ubuntu 16.04, отключите на нем единообразное именование сетевых устройств. Благодаря этому для общего трафика будет использоваться интерфейс eth0, а eth1 – для трафика частной сети.

Откройте файл 50-cloudimg-settings.cfg в текстовом редакторе:

sudo nano /etc/default/grub.d/50-cloudimg-settings.cfg

Отредактируйте настройку GRUB_CMDLINE_LINUX_DEFAULT. В конце строки в кавычках добавьте net.ifnames = 0. Отредактированная строка должна выглядеть так:

. . .
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS0 net.ifnames=0"
. . .

Сохраните и закройте файл.

Затем обновите GRUB:

sudo update-grub

Когда команда ответит done, перезапустите сервер:

sudo reboot

После завершения перезагрузки сервера снова подключитесь к нему по SSH, затем откройте файл конфигурации сети, 50-cloud-init.cfg:

sudo nano /etc/network/interfaces.d/50-cloud-init.cfg

В нижней части файла вставьте новый раздел. Обязательно укажите свой внутренний IP-адрес, а затем значение сетевой маски после слеша:

auto eth1
iface eth1 inet static
address Server_Private_IP/16

Сохраните и закройте файл, затем перезапустите сеть, которая проверит конфигурацию на наличие ошибок и загрузит сетевой интерфейс:

sudo systemctl restart networking

Когда команда успешно выполнена, она не возвращает результат.

Настройка частной сети в Ubuntu 14.04 и Debian

В системах Ubuntu 14.04 или Debian откройте файл сетевых интерфейсов:

sudo nano /etc/network/interfaces

Добавьте в конец файла следующий раздел, указав свой внутренний адрес:

auto eth1
iface eth1 inet static
address Server_Private_IP
netmask 255.255.0.0

Сохраните и закройте файл. Чтобы включить интерфейс, используйте ifup:

sudo ifup eth1

При успешном выполнении команда не возвращает результат.

Настройка частной сети в CentOS и Fedora

В этих системах настройка начинается с получения аппаратного адреса для eth1 с помощью команды ifconfig.

sudo ifconfig -a

Вывод команды отличается в зависимости от дистрибутива. В CentOS 7 и Fedora найдите значение ether в разделе eth1.

eth1: flags=4098<BROADCAST,MULTICAST>  mtu 1500
ether 12:23:34:45:56:67  txqueuelen 1000  (Ethernet)
. . .

В CentOS 6 найдите значение HWaddr в разделе eth1.

eth1      Link encap:Ethernet  HWaddr 12:23:34:45:56:67
BROADCAST MULTICAST  MTU:1500  Metric:1
. . .

Затем откройте новый файл в каталоге конфигурации интерфейса:

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth1

Добавьте сюда приведенные ниже строки, указав значения вашего сервера. HWADDR – это значение из вывода ifconfig, а значение IPADDR – внутренний адрес.

DEVICE="eth1"
HWADDR=info_from_ifconfig
IPADDR=Server_Private_IP
BOOTPROTO=none
ONBOOT="yes"
NETMASK=255.255.0.0
NM_CONTROLLED="yes"
IPV6INIT="no"
DEFROUTE="no"

Сохраните и закройте файл.

Чтобы включить интерфейс, используйте ifup:

ifup eth1

При успешном выводе команда не возвращает результат.

Настойка частной сети в FreeBSD

В командной строке сервера откройте /etc/rc.conf как пользователь root или sudo:

sudo vim /etc/rc.conf

В файле найдите эти строки:

. . .
# Dynamic Configuration lines and the immediate line below it,
# are removed each boot.
. . .

Сразу над ними добавьте строку ifconfig_vnet1, указав свой внутренний IP.

. . .
ifconfig_vtnet1="inet Server_Private_IP netmask 255.255.0.0"
# Dynamic Configuration lines and the immediate line below it,
# are removed each boot.
. . .

Сохраните и закройте файл.

Перезапустите сети с помощью /etc/netstart, эта команда проверит синтаксис и применит новые параметры:

/etc/netstart

В выводе должен быть раздел vtnet1, в котором будет ваш внутренний IP-адрес.

4: Проверка настройки

Используйте ifconfig, чтобы проверить настройку сети:

sudo ifconfig

Вывод должен содержать раздел для вашего интерфейса, который указывает внутренний IP-адрес и статус UP и RUNNING. В дистрибутивах Linux (Ubuntu, Debian, CentOS, Fedora) ищите раздел eth1:

eth1: flags=4163< UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 192.0.2.10  netmask 255.255.0.0  broadcast 192.0.2.255
inet6 xxxx::xxxx:xxxx:xxxx:xxx  prefixlen 64  scopeid 0x20<link>
ether 12:34:46:78:98:10  txqueuelen 1000  (Ethernet)
RX packets 258  bytes 13872 (13.5 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 146  bytes 10640 (10.3 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

В FreeBSD вам нужен раздел vtnet1:

vtnet1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=6c07bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,VLAN_HWTSO,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
ether 12:34:46:78:98:10
hwaddr 12:34:46:78:98:10
inet6 xxxx::xxxx:xxxx:xxxx:xxx%vtnet1 prefixlen 64 scopeid 0x2
inet 192.0.2.10 netmask 0xffff0000 broadcast 192.0.2.255
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
media: Ethernet 10Gbase-T <full-duplex>
status: active

Также можно проверить взаимодействие между двумя серверами в частной сети. Для этого подключитесь к серверу по SSH, а затем используйте ping и укажите внутренний IP-адрес другого сервера в частной сети:

ping Second_Server_Private_IP
PING Second_Server_Private_IP (Second_Server_Private_IP) 56(84) bytes of data.
64 bytes from Second_Server_Private_IP: icmp_seq=1 ttl=64 time=3.80 ms
64 bytes from Second_Server_Private_IP): icmp_seq=2 ttl=64 time=0.707 ms
64 bytes from Second_Server_Private_IP): icmp_seq=3 ttl=64 time=0.517 ms

Подобный вывод подтверждает, что частная сеть настроена успешно.

Заключение

Теперь вы умеете включать поддержку частной сети на серверах Ubuntu 16.04, Ubuntu 14.04, Debian, Centos, Fedora и FreeBSD.

Tags: , , , , , ,