Импортировать файл BIND-зоны
Пример импорта файла зоны из BIND в Selectel DNS с использованием octoDNS
Установить octoDNS
Убедитесь, что у вас установлены python и virtualenv. При необходимости установите их:
- Linux
- MacOS
sudo apt-get update
sudo apt-get install python virtualenvbrew install python
brew install virtualenvСоздайте директорию для работы с octoDNS:
mkdir ~/octodns ~/octodns/config
cd ~/octodnsСоздайте виртуальную среду для работы с octoDNS:
virtualenv env
Активируйте виртуальную среду:
source env/bin/activate
Установите octoDNS в виртуальную среду:
pip3 install octodns
Проверьте, что пакет установился корректно:
octodns-sync --version
В выводе команды должно быть следующее (цифры могут отличаться):
octoDNS 0.9.17
Установите Selectel провайдер для octoDNS:
pip3 install octodns_selectel
Импортировать файл зоны
Перейдите в каталог
~/octodns/config
:cd ~/octodns/config
Создайте файл
config.yaml
:nano config.yaml
Скопируйте в файл содержимое:
---
providers:
config:
class: octodns.provider.yaml.YamlProvider
directory: ./config
default_ttl: 3600
enforce_order: True
selectel:
class: octodns_selectel.SelectelProvider
token: <your_api_token>
zonefile:
class: octodns.source.axfr.ZoneFileSource
directory: ./zones
check_origin: false
zones:
<example.com>.:
sources:
- zonefile
targets:
- selectelУкажите:
<your_api_token>
— ваш токен Selectel;<example.com>
— имя вашего домена.
Создайте директорию
zones
:mkdir zones
Скачайте файл BIND-зоны в директорию
zones
.Измените имя скачанного файла на имя вашего домена с точкой на конце:
mv <bind_zone_file.txt> <example.com>.
Укажите:
<bind_zone_file.txt>
— имя скачанного BIND-файла;<example.com>
— имя вашего домена.
Импортируйте файл BIND-зоны в доменную зону в Selectel DNS:
octodns-sync --config-file=./config/config.yaml --doit