Настройка сети Suse linux

Обновлено: 21.11.2024

Ручная настройка сетевого программного обеспечения всегда должна быть последней альтернативой. Рекомендуется использовать YaST. Все сетевые интерфейсы активируются скриптом /sbin/ifup. Чтобы остановить интерфейс, используйте ifdown. Чтобы проверить его статус, используйте ifstatus.

Если вы используете только внутренние сетевые карты, просто настройте интерфейсы с помощью их имен. С помощью команд ifup �eth0, ifstatus �eth0 и ifdown �eth0 запустите, проверьте или остановите интерфейс eth0< /тт>. Соответствующие файлы конфигурации хранятся в /etc/sysconfig/network/ifcfg-eth0. eth0 — это имя интерфейса и имя конфигурации.

В качестве альтернативы можно настроить сеть в соответствии с аппаратным адресом (MAC-адресом) сетевой карты. В этом случае используйте файл аппаратной конфигурации с именем в формате ifcfg-. Используйте символы нижнего регистра в аппаратном адресе, отображаемом командой ip �link ( ifconfig показывает буквы в верхнем регистре). Если ifup обнаружит файл конфигурации, соответствующий аппаратному адресу, возможно существующий файл ifcfg-eth0 будет проигнорирован.

С сетевыми картами с возможностью горячей замены все немного сложнее. Если вы не используете одну из этих карт, перейдите непосредственно к разделу 14.3.1. «Файлы конфигурации».

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

Например, рассмотрим ноутбук с двумя слотами PCMCIA, сетевой картой Ethernet PCMCIA и внутренней сетевой картой, настроенной как eth0. Если внутренняя карта находится в слоте 0, ее аппаратное описание будет eth-pcmcia-0. Cardmgr или сетевой сценарий горячего подключения запускает команду ifup �eth-pcmcia-0 eth1. ifup ищет в /etc/sysconfig/network/ файл ifcfg-eth-pcmcia-0. Если этот файл не существует, он последовательно ищет ifcfg-eth-pcmcia, ifcfg-pcmcia-0, ifcfg-pcmcia, ifcfg-eth1 и ifcfg-eth. Первый из этих файлов, найденных ifup, используется для конфигурации. Чтобы сгенерировать сетевую конфигурацию, действительную для всех сетевых карт PCMCIA во всех слотах, файл конфигурации должен называться ifcfg-pcmcia. Этот файл будет использоваться для сетевой карты в слоте 0 (eth-pcmcia-0), а также для карты Token Ring в слоте 1 (tr-pcmcia-1). ).

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

YaST перечисляет конфигурации для карт с возможностью горячей замены и соответственно записывает настройки в ifcfg-eth-pcmcia- . Чтобы использовать такой файл конфигурации для всех слотов, ifcfg-eth-pcmcia связан с этим файлом. Имейте это в виду, если вы иногда настраиваете сеть с YaST, а иногда без него.

14.3.1.Файлы конфигурации

В этом разделе представлен обзор файлов конфигурации сети и объясняется их назначение и используемый формат.

Автоматическая настройка сетевого интерфейса для SUSE Linux

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

Для систем Novell файлы конфигурации интерфейса называются ifcfg-eth-id (например, ifcfg-eth-id-00:14:4F:29:00:1D< /tt> для сетевого устройства NEM, использованного в предыдущих примерах), и находиться в системном каталоге /etc/sysconfig/network.

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

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

Используйте команду ifconfig или сокращенный сценарий ifup, чтобы перевести сетевой интерфейс в оперативный режим для использования после загрузки системы (по крайней мере, до запуска уровня 3).

Когда вы вручную редактируете один из файлов ifcfg, вам может потребоваться вызвать явную (вручную) последовательность ifdown/ifup для применения новую конфигурацию (например, изменение IP-адреса или сетевой маски, изменение MTU и т. д.).

сообщить об этом объявлении

20.6 Настройка сетевого подключения вручную

Ручная настройка сетевого программного обеспечения всегда должна быть последней альтернативой. Рекомендуется использовать YaST. Однако эта справочная информация о конфигурации сети также может помочь вам в работе с YaST.

Когда ядро ​​обнаруживает сетевую карту и создает соответствующий сетевой интерфейс, оно присваивает устройству имя в зависимости от порядка обнаружения устройств или порядка загрузки модулей ядра. Имена устройств ядра по умолчанию предсказуемы только в очень простых или строго контролируемых аппаратных средах. Системы, которые позволяют добавлять или удалять оборудование во время выполнения или поддерживают автоматическую настройку устройств, не могут рассчитывать на стабильные имена сетевых устройств, назначенные ядром после перезагрузки.

Однако все средства настройки системы полагаются на постоянные имена интерфейсов. Проблема решается udev. udev поддерживает базу данных известных сетевых интерфейсов и переименовывает интерфейсы из имен, присвоенных им ядром, в постоянные имена, хранящиеся в базе данных. База сетевых интерфейсов udev хранится в файле /etc/udev/rules.d/70-persistent-net.rules. Каждая строка в файле описывает один сетевой интерфейс и указывает его постоянное имя. Системные администраторы могут изменить присвоенные имена, отредактировав записи NAME="". После того как udev переименовал сетевое устройство в настроенное имя, команда ifup применяет конфигурацию системы к интерфейсу.

В Табл. 20-5 приведены наиболее важные сценарии, задействованные в конфигурации сети.

Таблица 20-5 Сценарии настройки сети вручную

Сценарии if* запускают существующие сетевые интерфейсы или возвращают состояние указанного интерфейса. Более подробная информация доступна на странице руководства ifup .

Сценарий rcnetwork можно использовать для запуска, остановки или перезапуска всех сетевых интерфейсов или только определенного. Используйте rcnetwork stop для остановки, rcnetwork start для запуска и rcnetwork restart для перезапуска сетевых интерфейсов. Если вы хотите остановить, запустить или перезапустить только один интерфейс, используйте команду, за которой следует имя интерфейса, например, rcnetwork restart eth0 . Если интерфейс не указан, брандмауэр останавливается, запускается или перезапускается вместе с сетевыми интерфейсами. Команда rcnetwork status отображает состояние интерфейсов, их IP-адреса и работает ли DHCP-клиент. С помощью rcnetwork stop-all-dhcp-clients и rcnetwork restart-all-dhcp-clients вы можете остановить или перезапустить DHCP-клиенты, работающие на сетевых интерфейсах.

Дополнительная информация о udev и постоянных именах устройств доступна в Разделе 17.0, Динамическое управление устройствами ядра с помощью udev.

20.6.1 Файлы конфигурации

В этом разделе представлен обзор файлов конфигурации сети и объясняется их назначение и используемый формат.

/etc/sysconfig/network/ifcfg-*

Эти файлы содержат конфигурации сетевых интерфейсов. Они включают такую ​​информацию, как режим запуска и IP-адрес. Возможные параметры описаны на странице руководства ifup. Кроме того, все переменные из файлов dhcp, wireless и config можно использовать в файлах ifcfg-*, если общие настройки должны использоваться только для одного интерфейса.

/etc/sysconfig/сеть/

Файл config содержит общие настройки поведения ifup , ifdown и ifstatus . dhcp содержит настройки DHCP и беспроводной сети для карт беспроводной локальной сети. Переменные во всех трех файлах конфигурации закомментированы и могут также использоваться в файлах ifcfg-*, где они обрабатываются с более высоким приоритетом.

/etc/sysconfig/сеть/

Здесь определяется статическая маршрутизация пакетов TCP/IP. Все статические маршруты, необходимые для различных системных задач, могут быть введены в файл /etc/sysconfig/network/routes: маршруты к хосту, маршруты к хосту через шлюз и маршруты к сети. Для каждого интерфейса, которому требуется индивидуальная маршрутизация, определите дополнительный файл конфигурации: /etc/sysconfig/network/ifroute-*. Замените * на имя интерфейса.Записи в файлах конфигурации маршрутизации выглядят следующим образом:

Цель маршрута указана в первом столбце. Этот столбец может содержать IP-адрес сети или хоста или, в случае доступных серверов имен, полное имя сети или хоста.

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

Четвертый столбец относится только к сетям, подключенным к локальному хосту, таким как петля, Ethernet, ISDN, PPP и фиктивное устройство. Здесь необходимо ввести имя устройства.

Пятый (необязательный) столбец можно использовать для указания типа маршрута. Столбцы, которые не нужны, должны содержать знак минус — для того, чтобы синтаксический анализатор правильно интерпретировал команду. Для получения дополнительной информации обратитесь к странице руководства route(5).

/etc/resolv.conf

Однако файл /etc/resolv.conf не следует редактировать вручную. Вместо этого он создается сценарием netconfig. Чтобы определить статическую конфигурацию DNS без использования YaST, вручную отредактируйте соответствующие переменные в файле /etc/sysconfig/network/config: NETCONFIG_DNS_STATIC_SEARCHLIST (список доменных имен DNS, используемых для поиск имени хоста), NETCONFIG_DNS_FORWARDER (определяет имя сервера пересылки DNS, который необходимо настроить). Чтобы отключить настройку DNS с помощью netconfig, установите NETCONFIG_DNS_POLICY='' . Дополнительные сведения о netconfig см. в man 8 netconfig .

Пример 20-5 /etc/resolv.conf

Некоторые сервисы, такие как pppd ( wvdial ), ipppd ( isdn ), dhcp ( dhcpcd и dhclient ) и pcmcia изменяют файл /etc/resolv.conf с помощью скрипта modify_resolvconf . Если файл /etc/resolv.conf был временно изменен этим сценарием, он содержит предопределенный комментарий, содержащий информацию о службе, которая его изменила, месте, где была создана резервная копия исходного файла, и о том, как отключить автоматическое изменение. механизм. Если файл /etc/resolv.conf изменен несколько раз, файл включает изменения во вложенной форме. Они могут быть возвращены чистым способом, даже если это обращение происходит в порядке, отличном от порядка, в котором были введены модификации. Службы, которым может потребоваться такая гибкость, включают isdn и pcmcia .

Если служба не была прервана обычным и чистым способом, для восстановления исходного файла можно использовать команду mod_resolvconf. Также при загрузке системы выполняется проверка на наличие неочищенного, модифицированного resolv.conf , например, после сбоя системы, и в этом случае восстанавливается исходный (немодифицированный) resolv.conf.

YaST использует команду change_resolvconf check, чтобы выяснить, был ли изменен файл resolv.conf, и впоследствии предупреждает пользователя, что изменения будут потеряны после восстановления файла. Помимо этого, YaST не полагается на modify_resolvconf , а это означает, что влияние изменения resolv.conf через YaST такое же, как и любое ручное изменение. В обоих случаях изменения имеют постоянный эффект. Изменения, запрашиваемые упомянутыми службами, носят временный характер.

/sbin/netconfig

netconfig — это модульный инструмент для управления дополнительными настройками конфигурации сети. Он объединяет статически определенные параметры с параметрами, предоставляемыми механизмами автоконфигурации, такими как dhcp или ppp, в соответствии с предопределенной политикой. Требуемые изменения вносятся в систему путем вызова модулей netconfig, которые отвечают за изменение файла конфигурации и перезапуск службы или аналогичные действия.

netconfig распознает три основных действия:

Команда netconfig Modify изменяет текущий интерфейс и динамические настройки службы, а также обновляет конфигурацию сети. Netconfig считывает настройки из стандартного ввода или из файла, указанного с помощью параметра --lease-file filename, и сохраняет их внутри до перезагрузки системы или следующего действия по изменению или удалению. Уже существующие настройки для той же комбинации интерфейса и сервиса перезаписываются. Интерфейс задается параметром -i имя_интерфейса. Служба указывается параметром -s имя_службы.

Команда netconfig remove удаляет динамические параметры, предоставленные модифицирующим действием для указанной комбинации интерфейса и службы, и обновляет конфигурацию сети. Интерфейс задается параметром -i имя_интерфейса. Служба указывается параметром -s имя_службы.

Команда netconfig update обновляет конфигурацию сети с использованием текущих настроек. Это полезно при изменении политики или статической конфигурации.

Политика netconfig и параметры статической конфигурации задаются либо вручную, либо с помощью YaST или NetworkManager в файле /etc/sysconfig/network/config.Параметры динамической конфигурации, предоставляемые инструментами автоконфигурации, такими как dhcp или ppp, доставляются непосредственно этими инструментами с помощью действий netconfig modify и netconfig remove.

Дополнительную информацию о netconfig см. в man 8 netconfig .

/etc/хост

Пример 20-6 /etc/hosts

/etc/сети

Здесь сетевые имена преобразуются в сетевые адреса. Формат аналогичен формату файла hosts, за исключением того, что имена сетей предшествуют адресам. См. пример 20-7.

Пример 20-7 /etc/networks

/etc/host.conf

Таблица 20-6 Параметры файла /etc/host.conf

заказать хосты, связать

Указывает порядок доступа к службам для разрешения имен. Доступные аргументы (разделенные пробелами или запятыми):

hosts: поиск в файле /etc/hosts

bind : доступ к серверу имен

Определяет, может ли хост, указанный в /etc/hosts, иметь несколько IP-адресов.

нет спуфа при включении/отключении предупреждения о спуфинге

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

Указанное доменное имя отделяется от имени хоста после разрешения имени хоста (при условии, что имя хоста включает доменное имя). Этот параметр полезен, если в файле /etc/hosts находятся только имена из локального домена, но они все равно должны распознаваться с присоединенными доменными именами.

Пример 20-8 /etc/host.conf

/etc/nsswitch.conf

Появление GNU C Library 2.0 сопровождалось введением переключателя службы имен (NSS). За подробностями обратитесь к справочной странице nsswitch.conf(5) и Справочному руководству по библиотеке GNU C.

Пример 20-9 /etc/nsswitch.conf

Базы данных, доступные через NSS, перечислены в таблице 20-7. Кроме того, в ближайшем будущем ожидаются automount, bootparams, netmasks и publickey. Параметры конфигурации для баз данных NSS перечислены в таблице 20-8.

Таблица 20-7 Базы данных, доступные через /etc/nsswitch.conf

Псевдонимы почты, реализованные sendmail; см. псевдонимы man 5 .

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

Для имен хостов и IP-адресов, используемых функцией gethostbyname и аналогичными функциями.

Действительные списки хостов и пользователей в сети для управления правами доступа; см. справочную страницу netgroup(5).

Сетевые имена и адреса, используемые getnetent .

Пароли пользователей, используемые getpwent ; см. справочную страницу passwd(5).

Сетевые протоколы, используемые getprotoent ; см. man-страницу протоколов(5).

Имена и адреса вызовов удаленных процедур, используемые getrpcbyname и подобными функциями.

Сетевые службы, используемые getservent .

Теневые пароли пользователей, используемые getspnam ; см. man-страницу shadow(5).

Таблица 20-8 Параметры конфигурации для баз данных NSS

непосредственный доступ к файлам, например, /etc/aliases

доступ через базу данных

может использоваться только как расширение для хостов и сетей

может использоваться только как расширение для passwd , shadow и group

/etc/nscd.conf

Этот файл используется для настройки nscd (демона кэширования службы имен). См. справочные страницы nscd(8) и nscd.conf(5). По умолчанию системные записи passwd и groups кэшируются nscd. Это важно для производительности служб каталогов, таких как NIS и LDAP, поскольку в противном случае для каждого доступа к именам или группам необходимо будет использовать сетевое соединение. hosts не кэшируется по умолчанию, потому что механизм кэширования хостов в nscd делает локальную систему неспособной доверять проверкам прямого и обратного просмотра. Вместо того, чтобы просить nscd кэшировать имена, настройте кэширующий DNS-сервер.

Если кэширование для пароля активировано, обычно требуется около пятнадцати секунд, прежде чем будет распознан новый добавленный локальный пользователь. Сократите это время ожидания, перезапустив nscd с помощью команды rcnscd restart .

/etc/ИМЯ ХОСТА

Это содержит имя хоста без прикрепленного имени домена. Этот файл читается несколькими сценариями во время загрузки машины. Он может содержать только одну строку, в которой указано имя хоста.

20.6.2 Тестирование конфигурации

Прежде чем записывать свою конфигурацию в файлы конфигурации, вы можете протестировать ее. Чтобы настроить тестовую конфигурацию, используйте команду ip. Чтобы проверить соединение, используйте команду ping. Также доступны старые инструменты настройки, ifconfig и route.

Команды ip , ifconfig и route изменяют конфигурацию сети напрямую, не сохраняя ее в файле конфигурации. Если вы не введете свою конфигурацию в правильные файлы конфигурации, измененная конфигурация сети будет потеряна при перезагрузке.

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

ip – это инструмент для отображения и настройки маршрутизации, сетевых устройств, политик маршрутизации и туннелей. Он был разработан в качестве замены старых инструментов ifconfig и route.

IP — очень сложный инструмент. Его общий синтаксис — команда ip options object. Вы можете работать со следующими объектами:

Этот объект представляет собой сетевое устройство.

Этот объект представляет собой IP-адрес устройства.

Этот объект представляет запись кэша ARP или NDISC.

Этот объект представляет запись таблицы маршрутизации.

Этот объект представляет правило в базе данных политик маршрутизации.

Этот объект представляет многоадресный адрес.

Этот объект представляет собой запись кэша многоадресной маршрутизации.

Этот объект представляет собой туннель через IP.

Если команда не указана, используется команда по умолчанию, обычно list .

Измените состояние устройства с помощью команды ip link set имя_устройства. Например, чтобы деактивировать устройство eth0, введите ip link set eth0 down . Чтобы активировать его снова, используйте ip link set eth0 up .

После активации устройства вы можете настроить его. Чтобы установить IP-адрес, используйте ip addr add ip_address + dev имя_устройства. Например, чтобы установить адрес интерфейса eth0 на 192.168.12.154/30 со стандартной широковещательной рассылкой (опция brd ), введите ip addr add 192.168.12.154/30 brd + dev eth0 .

Для рабочего соединения необходимо также настроить шлюз по умолчанию. Чтобы установить шлюз для вашей системы, введите ip route add gateway_ip_address . Чтобы преобразовать один IP-адрес в другой, используйте nat : ip route add nat ip_address через other_ip_address .

Чтобы отобразить все устройства, используйте ip link ls . Чтобы отобразить только работающие интерфейсы, используйте ip link ls up. Чтобы распечатать статистику интерфейса для устройства, введите ip -s link ls имя_устройства. Для просмотра адресов ваших устройств введите ip addr. В выводе ip addr также найдите информацию о MAC-адресах ваших устройств. Чтобы показать все маршруты, используйте ip route show .

Для получения дополнительной информации об использовании ip введите ip help или просмотрите справочную страницу ip(8). Опция справки также доступна для всех ip-объектов. Если, например, вы хотите прочитать справку по ip addr, введите ip addr help. Найдите руководство по ip в /usr/share/doc/packages/iproute2/ip-cref.pdf .

Проверка соединения с помощью ping

Команда ping — это стандартный инструмент для проверки работоспособности соединения TCP/IP. Он использует протокол ICMP для отправки небольшого пакета данных, дейтаграммы ECHO_REQUEST, на узел назначения с запросом немедленного ответа. Если это сработает, ping отобразит сообщение об этом, которое указывает, что сетевое соединение в основном работает.

ping делает больше, чем просто проверяет функцию соединения между двумя компьютерами: он также предоставляет некоторую базовую информацию о качестве соединения. В примере 20.10 вы можете увидеть пример вывода ping. Предпоследняя строка содержит информацию о количестве переданных пакетов, потерянных пакетах и ​​общем времени выполнения ping.

Пример 20-10 Вывод команды ping

Чтобы получить дополнительные параметры и информацию об использовании ping, введите ping -h или см. справочную страницу ping (8).

Настройка сети с помощью ifconfig

ifconfig — это традиционный инструмент настройки сети. В отличие от ip, вы можете использовать его только для настройки интерфейса. Если вы хотите настроить маршрутизацию, используйте route .

ПРИМЕЧАНИЕ: ifconfig и ip

Программа ifconfig устарела. Вместо этого используйте IP-адрес.

Без аргументов ifconfig отображает состояние активных в данный момент интерфейсов. Как вы можете видеть в примере 20.11, ifconfig имеет очень хорошо организованный и подробный вывод. Вывод также содержит информацию о MAC-адресе вашего устройства, значение HWaddr в первой строке.

Пример 20-11 Вывод команды ifconfig

Чтобы получить дополнительные параметры и информацию об использовании ifconfig, введите ifconfig -h или см. справочную страницу ifconfig (8).

Настройка маршрутизации с маршрутом

route — это программа для работы с таблицей IP-маршрутизации. Вы можете использовать его для просмотра конфигурации маршрутизации и добавления или удаления маршрутов.

ПРИМЕЧАНИЕ: маршрут и IP-адрес

Программный маршрут устарел. Вместо этого используйте IP-адрес.

route особенно полезен, если вам нужна быстрая и понятная информация о конфигурации маршрутизации для выявления проблем с маршрутизацией. Чтобы просмотреть текущую конфигурацию маршрутизации, введите route -n от имени root .

Пример 20-12 Вывод команды route -n

Чтобы получить дополнительные параметры и информацию об использовании маршрута, введите route -h или просмотрите справочную страницу маршрута (8).

20.6.3 Сценарии запуска

Помимо файлов конфигурации, описанных выше, существуют также различные сценарии, которые загружают сетевые программы во время загрузки машины. Они запускаются, как только система переключается на один из многопользовательских уровней выполнения. Некоторые из этих сценариев описаны в таблице 20-9.

Таблица 20-9 Некоторые сценарии запуска сетевых программ

Этот сценарий обрабатывает конфигурацию сетевых интерфейсов. Если сетевая служба не запущена, сетевые интерфейсы не реализуются.

Запускает xinetd.xinetd можно использовать, чтобы сделать службы сервера доступными в системе. Например, он может запускать vsftpd всякий раз, когда инициируется FTP-соединение.

Запускает средство сопоставления портов, необходимое для сервера RPC, например сервера NFS.

Запускает сервер NFS.

Управляет постфиксным процессом.

Запускает сервер NIS.

Запускает клиент NIS.


сообщить об этом объявлении

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

Цели обучения

Успешно завершите это лабораторное занятие, достигнув следующих целей обучения:

Выполните команду:

Запишите IP-адрес eth0.

Затем используйте YaST, чтобы установить имя хоста:

В интерфейсе ncurses выберите Сетевые службы > Имена хостов > Добавить.

Введите IP-адрес адаптера eth0.

Сохранить и выйти из YaST.

Прочитайте файл и найдите имя хоста:

Проверьте nsswitch.conf и убедитесь, что в строке dns сначала указаны файлы:

Вы должны получить индексную страницу.

Дополнительные ресурсы

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

Что такое практические занятия

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

Информационный бюллетень

Мы всегда будем бережно относиться к вашим личным данным. Отправляя эту форму, вы разрешаете A Cloud Guru и нашей дочерней компании Pluralsight LLC хранить и обрабатывать личную информацию, представленную выше, чтобы предоставлять вам запрашиваемую информацию и отправлять вам по электронной почте информацию о распродажах, эксклюзивных предложениях и последней информации от A Облачный гуру и Pluralsight. Спасибо за интерес!

Читайте также: