{"id":38840,"date":"2019-10-31T22:26:17","date_gmt":"2019-10-31T19:26:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/svoj-dynamic-dns-s-pomoshhyu-cloudflare\/"},"modified":"2019-10-31T22:26:17","modified_gmt":"2019-10-31T19:26:17","slug":"svoj-dynamic-dns-s-pomoshhyu-cloudflare","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/svoj-dynamic-dns-s-pomoshhyu-cloudflare","title":{"rendered":"Savs dinamiskais DNS ar CloudFlare","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h3>Ievads<\/h3>\n<p>\n<img decoding=\"async\" alt=\"Savs dinamiskais DNS ar CloudFlare\" src=\"\/wp-content\/uploads\/2019\/10\/d1405e23e86048a05e6707bb5e9e215f.jpg\" style=\"display:block;margin: 0 auto;\" \/> Person\u012bg\u0101m vajadz\u012bb\u0101m m\u0101j\u0101s uzst\u0101d\u012bju VSphere, kur grie\u017eu virtu\u0101lo mar\u0161rut\u0113t\u0101ju un Ubuntu serveri k\u0101 multivides serveri un v\u0113l vair\u0101k vis\u0101du gardumu, un \u0161im serverim j\u0101b\u016bt pieejamam no interneta. Bet probl\u0113ma ir t\u0101, ka mans providers par statisk\u0101m IP adres\u0113m iekas\u0113 maksu, kuru vienm\u0113r var izmantot k\u0101d\u0101 noder\u012bg\u0101k\u0101 veid\u0101. T\u0101p\u0113c es izmantoju ddclient + cloudflare komplektu. <\/p>\n<p>Viss g\u0101ja labi, kam\u0113r ddclient p\u0101rst\u0101ja str\u0101d\u0101t. Nedaudz pakas\u012bju to, un sapratu, ka ir pien\u0101cis laiks izmantot pagaidu risin\u0101jumus, jo laiks, kas tika velt\u012bts probl\u0113mas mekl\u0113\u0161anai, k\u013cuva p\u0101r\u0101k liels. Galu gal\u0101 viss p\u0101rv\u0113rt\u0101s maz\u0101 demon\u0101, kas vienk\u0101r\u0161i darbojas, un man vair\u0101k ar\u012b nevajag. <br \/>\nKam interes\u0113 \u2013 laipni l\u016bdzam zem\u0101k.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Izmantotie r\u012bki un k\u0101 \u201etas\u201d darbojas<\/h3>\n<p>\nPirmk\u0101rt, es uzzin\u0101ju no cloudflare m\u0101jas lapas visu, kas j\u0101saka par <noindex><a rel=\"nofollow\" href=\"https:\/\/api.cloudflare.com\/\">API<\/a><\/noindex>. Un jau biju piev\u0113rsies realiz\u0113\u0161anai Python (p\u0113c iepaz\u012b\u0161an\u0101s ar Python, es to arvien bie\u017e\u0101k izmantoju vienk\u0101r\u0161\u0101m uzdevumu risin\u0101\u0161anai vai kad nepiecie\u0161ams \u0101tri izveidot prototipu), kad p\u0113k\u0161\u0146i uzd\u016bros gandr\u012bz gatavai realiz\u0101cijai.<br \/>\nKopum\u0101 par pamatu tika \u0146emts apvalks <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cloudflare\/python-cloudflare\">python-cloudflare<\/a><\/noindex>.<\/p>\n<p>Pa\u0146\u0113mu vienu no piem\u0113riem DNS atjaunin\u0101\u0161anai un pievienoju konfigur\u0101cijas faila izmanto\u0161anu un iesp\u0113ju atjaunin\u0101t vair\u0101kas A ierakstu zonas un, protams, neierobe\u017eotu skaitu zonu.<\/p>\n<p>Lo\u0123ika ir sekojo\u0161a:<\/p>\n<ol>\n<li>Skripts ieg\u016bst no konfigur\u0101cijas faila zonu sarakstu un cauri t\u0101m iet cikl\u0101<\/li>\n<li>Katras zonas ietvaros skripts cikl\u0101 p\u0101rskata katru DNS A vai AAAA ierakstu un sal\u012bdzina Publisko IP ar ierakstu<\/li>\n<li>Ja IP at\u0161\u0137iras \u2014 maina to, ja n\u0113, izlai\u017e cikla atk\u0101rtojumu un p\u0101riet uz n\u0101kamo <\/li>\n<li>Aizmieg uz laiku, kas nor\u0101d\u012bts konfigur\u0101cijas fail\u0101<\/li>\n<\/ol>\n<p><\/p>\n<h3>Uzst\u0101d\u012b\u0161ana un konfigur\u0101cija<\/h3>\n<p>\nVar\u0113tu izveidot ar\u012b .deb pakotni, bet es nezinu, k\u0101 to izdar\u012bt, un viss nav tik sare\u017e\u0123\u012bti.<br \/>\nProcesu es diezgan detaliz\u0113ti aprakst\u012bjis README.md <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/DzenDyn\/zen-cf-ddns\">repotitorija lap\u0101<\/a><\/noindex>.<\/p>\n<p>Bet, uz visiem gad\u012bjumiem, aprakst\u012b\u0161u krieviski visp\u0101r\u012bgi:<\/p>\n<ol>\n<li>P\u0101rliecinieties, ka jums ir uzst\u0101d\u012bta python3 un python3-pip, ja nav \u2014 uzst\u0101diet (Windows python3-pip tiek uzst\u0101d\u012bts kop\u0101 ar Python)<\/li>\n<li>Klon\u0113jiet vai lejupiel\u0101d\u0113jiet repotitoriju<\/li>\n<li>Uzst\u0101diet nepiecie\u0161am\u0101s atkar\u012bbas.\n<pre><code class=\"plaintext\">python3 -m pip install -r requirements.txt<\/code><\/pre>\n<p>\n<\/li>\n<li>Palai\u017eiet uzst\u0101d\u012b\u0161anas skriptu<br \/>\nLinux:<\/p>\n<pre><code class=\"plaintext\">chmod +x install.sh\nsudo .\/install.sh<\/code><\/pre>\n<p>\nWindows: windows_install.bat\n<\/li>\n<li>Redi\u0123\u0113jiet konfigur\u0101cijas failu<br \/>\nLinux:<\/p>\n<pre><code class=\"plaintext\">sudoedit \/etc\/zen-cf-ddns.conf<\/code><\/pre>\n<p>\nWindows:<\/p>\n<p>Atveriet failu zen-cf-ddns.conf map\u0113, uz kuru uzst\u0101d\u012bj\u0101t skriptu.<\/p>\n<p>\u0160is ir parasts JSON fails, uzst\u0101d\u012bjumos nekas sare\u017e\u0123\u012bts \u2013 speci\u0101li aprakst\u012bju, k\u0101 piem\u0113ru, 2 da\u017e\u0101das zonas taj\u0101.\n<\/li>\n<\/ol>\n<p><\/p>\n<h4>Kas sl\u0113pjas aiz instal\u0113t\u0101jiem?<\/h4>\n<p>\ninstall.sh Linux:<\/p>\n<ol>\n<li>Tiek izveidots lietot\u0101js, lai palaistu \u0161o demon, bez m\u0101jas direktorijas izveides un iesp\u0113jas pieteikties.\n<pre><code class=\"plaintext\">sudo useradd -r -s \/bin\/false zen-cf-ddns<\/code><\/pre>\n<p>\n<\/li>\n<li>Izveido fails logu ierakstiem \/var\/log\/<\/li>\n<li>Padar\u0101m jaunizveidot\u0101 lietot\u0101ja failu par \u012bpa\u0161nieku.<\/li>\n<li>Kop\u0113 failus sav\u0101s viet\u0101s (konfigur\u0101cija \/etc, izpild\u0101mais fails \/usr\/bin, pakalpojuma fails \/lib\/systemd\/system)<\/li>\n<li>Aktiviz\u0113 pakalpojumu<\/li>\n<\/ol>\n<p>\nwindows_install.bat Windows:<\/p>\n<ol>\n<li>Kop\u0113 izpild\u0101mo failu un konfigur\u0101cijas failu nor\u0101d\u012btaj\u0101 map\u0113, ko izv\u0113l\u0113jies lietot\u0101js.<\/li>\n<li>Izveido uzdevumu uzdevumu pl\u0101not\u0101j\u0101, lai palaistu skriptu, kad sist\u0113ma s\u0101kas.<br \/>\n<code>schtasks \/create \/tn \"CloudFlare Update IP\" \/tr \"%newLocation%\" \/sc onstart<\/code>\n<\/li>\n<\/ol>\n<p>\nP\u0113c konfigur\u0101cijas izmai\u0146\u0101m skriptu j\u0101restart\u0113, Linux viss ir vienk\u0101r\u0161i un ierasti:<\/p>\n<pre><code class=\"plaintext\">sudo service zen-cf-ddns start\nsudo service zen-cf-ddns stop\nsudo service zen-cf-ddns restart\nsudo service zen-cf-ddns status\n<\/code><\/pre>\n<p>\nWindows gad\u012bjum\u0101 n\u0101kas nogalin\u0101t procesu pythonw un atk\u0101rtoti palaist skriptu (\u013coti slinkums man rakst\u012bt pakalpojumu Windows uz C#):<\/p>\n<pre><code class=\"plaintext\">taskkill \/im pythonw.exe<\/code><\/pre>\n<p>\nUzst\u0101d\u012b\u0161ana un konfigur\u0113\u0161ana beigusies, lietojiet vesel\u012bbai.<\/p>\n<p>tiem, kas v\u0113las paskat\u012bties ne pa\u0161u skaist\u0101ko Python kodu, l\u016bk, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/DzenDyn\/zen-cf-ddns\">kr\u0101tuve GitHub<\/a><\/noindex>.<\/p>\n<p>MIT licence, t\u0101p\u0113c dari ar \u0161o labumu, ko gribi.<\/p>\n<p>P.S.: Saprotu, ka san\u0101cis nedaudz \u0161ausm\u012bgi, bet ar savu uzdevumu tas tiek gal\u0101 lieliski.<\/p>\n<p>UPD: 11.10.2019 17:37<br \/>\nAtradu v\u0113l 1 probl\u0113mu, un ja k\u0101ds var\u0113tu ieteikt, k\u0101 to atrisin\u0101t \u2014 b\u016btu \u013coti pateic\u012bgs.<br \/>\nProbl\u0113ma ir t\u0101da, ka, ja instal\u0113t atkar\u012bbas bez sudo python -m pip install -r &#8230;, tad no pakalpojuma lietot\u0101ja modu\u013ci neb\u016bs redzami, un es nev\u0113los piepras\u012bt lietot\u0101jiem instal\u0113t modu\u013cus ar sudo, un tas ar\u012b nav pareizi.<br \/>\nK\u0101 to izdar\u012bt pareizi, lai b\u016btu skaisti?<br \/>\nUPD: 11.10.2019 19:16 Probl\u0113ma atrisin\u0101ta, izmantojot venv.<br \/>\nIeguvu p\u0101ris izmai\u0146as. N\u0101kamais rel\u012bzes b\u016bs dr\u012bz.<br \/>\n<br \/>Avots: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/471102\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435 \u0414\u043b\u044f \u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0443\u0436\u0434 \u0434\u043e\u043c\u0430 \u043f\u043e\u0434\u043d\u044f\u043b VSphere, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043a\u0440\u0443\u0447\u0443 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440 \u0438 Ubuntu \u0441\u0435\u0440\u0432\u0435\u0440 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043c\u0435\u0434\u0438\u0430-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0435\u0449\u0435 \u043a\u0443\u0447\u0438 \u0432\u0441\u044f\u043a\u0438\u0445 \u0432\u043a\u0443\u0441\u043d\u044f\u0448\u0435\u043a, \u0438 \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0438\u0437 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442. \u041d\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u043e\u0439 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440 \u0434\u0430\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u043a\u0443 \u0437\u0430 \u0434\u0435\u043d\u044c\u0433\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0432\u0441\u0435\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0441\u0432\u044f\u0437\u043a\u043e\u0439 ddclient + [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":29132,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38840","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435 \u0414\u043b\u044f \u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0443\u0436\u0434 \u0434\u043e\u043c\u0430 \u043f\u043e\u0434\u043d\u044f\u043b.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/svoj-dynamic-dns-s-pomoshhyu-cloudflare\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u0432\u043e\u0439 dynamic DNS \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e CloudFlare | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435 \u0414\u043b\u044f \u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0443\u0436\u0434 \u0434\u043e\u043c\u0430 \u043f\u043e\u0434\u043d\u044f\u043b.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/svoj-dynamic-dns-s-pomoshhyu-cloudflare\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:26:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:26:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Savs dynamic DNS, izmantojot CloudFlare | ProHoster","description":"Ievads. Personisk\u0101m vajadz\u012bb\u0101m m\u0101j\u0101s uzs\u0101ku.","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/svoj-dynamic-dns-s-pomoshhyu-cloudflare","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u0432\u043e\u0439 dynamic DNS \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e CloudFlare | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435 \u0414\u043b\u044f \u043b\u0438\u0447\u043d\u044b\u0445 \u043d\u0443\u0436\u0434 \u0434\u043e\u043c\u0430 \u043f\u043e\u0434\u043d\u044f\u043b.","og:url":"https:\/\/prohoster.info\/lv\/blog\/administrirovanie\/svoj-dynamic-dns-s-pomoshhyu-cloudflare","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:26:17+00:00","article:modified_time":"2019-10-31T19:26:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38840","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 23:37:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:01:36","updated":"2026-01-23 23:37:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/38840","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=38840"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/38840\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media\/29132"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=38840"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=38840"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=38840"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}