The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Изменение SOA у файла зоны, !*! universite, 16-Май-11, 17:42  [смотреть все]
Формат зоны

$ttl 14400
domain.ks.ua.        IN      SOA     ns.domain.ua. mail.ukr.net. (2011051208 10800 14400 604800 86400)
        IN      NS      ns.domain.ua.
        IN      NS      ns.secondary.net.ua.
;       IN      NS      ns3.domain.ua
        IN      A       XXX.209.ZZZ.54
        IN      AAAA    2001:YYY:YY:YYY:12f5:89a1:e201:001b
domain.ks.ua.      IN      MX   10 mail.domain.ks.ua.
localhost       A       127.0.0.1
*               A       XXX.209.ZZZ.54
*               AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b

нужно распарсить zone.conf
прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний, с нулем в конце
  • Изменение SOA у файла зоны, !*! Aquarius, 02:08 , 17-Май-11 (1)
    [оверквотинг удален]
    > прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
    > с нулем в конце

    видимо, речь, все-таки, не про всю SOA, а только про серийный номер?
    предлагаю сформулировать задачу в другой форме: сгенерировать "сегодняшний, с нулем в конце" (A), сравнить (арифметически) с "выпарсеным" (B), и, если A>B, использовать A, иначе, B+1

    • Изменение SOA у файла зоны, !*! universite, 02:23 , 17-Май-11 (2)
      > видимо, речь, все-таки, не про всю SOA, а только про серийный номер?
      > предлагаю сформулировать задачу в другой форме: сгенерировать "сегодняшний, с нулем в конце"
      > (A), сравнить (арифметически) с "выпарсеным" (B), и, если A>B, использовать A,
      > иначе, B+1

      Да, вы правы, сравнивать только серийный номер.
      Но меня больше пугает парсинг зоны :(

      P.S. host -t SOA domain.ks.ua считаем грязным читом.

      • Изменение SOA у файла зоны, !*! Aquarius, 20:38 , 18-Май-11 (9)
        >> видимо, речь, все-таки, не про всю SOA, а только про серийный номер?
        >> предлагаю сформулировать задачу в другой форме: сгенерировать "сегодняшний, с нулем в конце"
        >> (A), сравнить (арифметически) с "выпарсеным" (B), и, если A>B, использовать A,
        >> иначе, B+1
        > Да, вы правы, сравнивать только серийный номер.
        > Но меня больше пугает парсинг зоны :(
        > P.S. host -t SOA domain.ks.ua считаем грязным читом.

        использование perl'а грязным читом не считается?

  • Изменение SOA у файла зоны, !*! LSTemp, 04:49 , 17-Май-11 (3)
    >[оверквотинг удален]
    > localhost       A    
    >   127.0.0.1
    > *            
    >    A       XXX.209.ZZZ.54
    > *            
    >    AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b
    >

    > нужно распарсить zone.conf
    > прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
    > с нулем в конце

    Цену решения огласи (https://www.opennet.ru/openforum/vsluhforumID9/9126.html)


    • Изменение SOA у файла зоны, !*! universite, 11:42 , 17-Май-11 (4)
      >[оверквотинг удален]
      >>   127.0.0.1
      >> *
      >>    A       XXX.209.ZZZ.54
      >> *
      >>    AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b
      >>
      >> нужно распарсить zone.conf
      >> прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
      >> с нулем в конце
      > Цену решения огласи (https://www.opennet.ru/openforum/vsluhforumID9/9126.html)

      0$

      • Изменение SOA у файла зоны, !*! tsolodov, 15:11 , 18-Май-11 (5)
        >[оверквотинг удален]
        >>> *
        >>>    A       XXX.209.ZZZ.54
        >>> *
        >>>    AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b
        >>>
        >>> нужно распарсить zone.conf
        >>> прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
        >>> с нулем в конце
        >> Цену решения огласи (https://www.opennet.ru/openforum/vsluhforumID9/9126.html)
        > 0$

        создал на M4 файл
        scripts/zonestemplates]$ cat ./in-addr.arpa.m4
        $TTL    86400
        @               IN      SOA     iap-5.srv.domain.ru nobody.ns.fttb. (
                                _DATE
                                7200
                                7200
                                864000
                                86400 )
                        IN      NS      ns1.fttb.
                        IN      NS      ns2.fttb.
                        IN      NS      ns3.fttb.
                        IN      NS      ns4.fttb.

        $INCLUDE _FILE


        Что получается:
        zonestemplates]$ m4 -D_DATE=`date "+%Y%m%d%H"` -D_FILE="hui" ./in-addr.arpa.m4
        $TTL    86400
        @               IN      SOA     iap-5.srv.domain.ru. nobody.ns.fttb. (
                                2011051815
                                7200
                                7200
                                864000
                                86400 )
                        IN      NS      ns1.fttb.
                        IN      NS      ns2.fttb.
                        IN      NS      ns3.fttb.
                        IN      NS      ns4.fttb.

        $INCLUDE hui


      • Изменение SOA у файла зоны, !*! LSTemp, 00:28 , 19-Май-11 (11)
        >[оверквотинг удален]
        >>> *
        >>>    A       XXX.209.ZZZ.54
        >>> *
        >>>    AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b
        >>>
        >>> нужно распарсить zone.conf
        >>> прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
        >>> с нулем в конце
        >> Цену решения огласи (https://www.opennet.ru/openforum/vsluhforumID9/9126.html)
        > 0$

        про 0$ ответ в другом топике дал.

        теперь сформируй входные данные: SOA всегда в оддной строке входного файла? или может иметь вид типа:

        [root@local localdomain]# cat ./srv
        $TTL    86400

        @       IN      SOA     localhost.localdomain. root.localdomain. (
                                200811300       ; serial
                                8H              ; refresh
                                2H              ; retry
                                1W              ; expiry
                                1D)             ; minimum

        ...

        вот вопрос. я же говорил, про вход и выход. Вы читали?


        PS
        вынесите serial в отдельный файл, мучаейе его там и include потом.  нах Вам вообще парсинг всей зоны для решения данной задачи?

        PSS
        вход->выход->анализ->решение (теперь Вы мне уже должны 0+0=два ноля)

        • Изменение SOA у файла зоны, !*! universite, 04:03 , 19-Май-11 (12)

          > теперь сформируй входные данные: SOA всегда в оддной строке входного файла? или
          > может иметь вид типа:

          Такой формат самый тяжелый в парсинге, поэтому пока не рассматриваем.
          Многие панели специально генерят конфиг в одну строчку.

          • Изменение SOA у файла зоны, !*! LSTemp, 07:43 , 23-Май-11 (13)

            >> теперь сформируй входные данные: SOA всегда в оддной строке входного файла? или
            >> может иметь вид типа:
            > Такой формат самый тяжелый в парсинге, поэтому пока не рассматриваем.
            > Многие панели специально генерят конфиг в одну строчку.

            для совсем "не заню каких, чтоб не обидеть" повторюсь: serial в отдельный файл и include его потом. а с файлом в из одной строки парсинга не надо.


          • Изменение SOA у файла зоны, !*! LSTemp, 07:47 , 23-Май-11 (14)
            >> теперь сформируй входные данные: SOA всегда в оддной строке входного файла? или
            >> может иметь вид типа:
            > Такой формат самый тяжелый в парсинге, поэтому пока не рассматриваем.
            > Многие панели специально генерят конфиг в одну строчку.

            "панели" ??? )))

  • Изменение SOA у файла зоны, !*! tsolodov, 15:12 , 18-Май-11 (6)
    >[оверквотинг удален]
    > localhost       A    
    >   127.0.0.1
    > *            
    >    A       XXX.209.ZZZ.54
    > *            
    >    AAAA    2001:YYY:YYY:YYY:12f5:89a1:e201:001b
    >
    > нужно распарсить zone.conf
    > прочитать SOA если он сегодняшний, увеличить на 1, если старый, сгенерить сегодняшний,
    > с нулем в конце

    кстати можно обойтись cat ./xxx | sed s/что/на что/




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру