--- /dev/null
+#!/bin/sh
+
+
+sleep 1
+systemctl --quiet is-active NetworkManager.service
+NM_RC=$?
+WAITED=0
+while [ $NM_RC -ne 0 ]
+do
+ echo -n .
+ sleep 1
+ WAITED=1
+ systemctl --quiet is-active NetworkManager.service
+ NM_RC=$?
+done
+[ $WAITED -eq 1 ] && echo
+
+CONNECTIONS=$(nmcli --terse connection show | wc -l)
+while [ $CONNECTIONS -ne 1 ]
+do
+ echo "Number of connections: $CONNECTIONS" >&2
+ sleep 1
+ CONNECTIONS=$(nmcli --terse connection show | wc -l)
+done
+
+nmcli --terse connection show | grep ':$' >/dev/null
+ALL_CONNECTION_DEVICES_KNOWN=$?
+while [ $ALL_CONNECTION_DEVICES_KNOWN -eq 0 ]
+do
+ echo "Not all connection devices are known yet" >&2
+ sleep 1
+ nmcli --terse connection show | grep ':$' >/dev/null
+ ALL_CONNECTION_DEVICES_KNOWN=$?
+done
+
+CONNECTION_LINE=$(nmcli --terse connection show)
+CONNECTION_UUID=$(echo $CONNECTION_LINE | cut -f 2 -d ':')
+CONNECTION_DEVICE=$(echo $CONNECTION_LINE | cut -f 4 -d ':')
+
+nmcli connection delete uuid "$CONNECTION_UUID"
+
+nmcli connection add \
+ connection.autoconnect yes \
+ connection.id internal \
+ connection.interface-name $CONNECTION_DEVICE \
+ connection.type 802-3-ethernet \
+ ipv4.addresses "10.228.109.104/16" \
+ ipv4.dns "10.228.109.253, 10.228.109.104" \
+ ipv4.dns-search "usr.user.hu" \
+ ipv4.gateway "10.228.109.254" \
+ ipv4.method "manual" \
+ ipv6.method "ignore" \
+ save yes
+
+nmcli connection show
--- /dev/null
+//
+// named.conf
+//
+
+options {
+ directory "/var/named";
+ dump-file "data/cache_dump.db";
+ statistics-file "data/named_stats.txt";
+ memstatistics-file "data/named_mem_stats.txt";
+
+ listen-on port 53 { any; };
+ listen-on-v6 port 53 { any; };
+
+ allow-query { none; };
+ allow-query-cache { none; };
+ allow-recursion { none; };
+
+ recursion no;
+
+ dnssec-enable yes;
+ dnssec-validation no;
+};
+
+logging {
+ channel default_debug {
+ file "data/named.run" versions 3 size 5m;
+ severity dynamic;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel client_channel {
+ file "data/client.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel lame-servers_channel {
+ file "data/lame-servers.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel notify_channel {
+ file "data/notify.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel queries_channel {
+ file "data/queries.log" versions 3 size 5m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel security_channel {
+ file "data/security.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel xfer-in_channel {
+ file "data/xfer-in.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ channel xfer-out_channel {
+ file "data/xfer-out.log" versions 3 size 1m;
+ severity info;
+ print-category yes;
+ print-severity yes;
+ print-time yes;
+ };
+ category default {
+ default_syslog;
+ default_debug;
+ };
+ category client {
+ client_channel;
+ };
+ category lame-servers {
+ lame-servers_channel;
+ };
+ category notify {
+ notify_channel;
+ };
+ category queries {
+ queries_channel;
+ };
+ category security {
+ security_channel;
+ };
+ category xfer-in {
+ xfer-in_channel;
+ };
+ category xfer-out {
+ xfer-out_channel;
+ };
+};
+
+key "primary_ns-internal_ns" {
+ algorithm hmac-sha256;
+ secret "fjQyVn7bfGnbbBTgm7CgJSVOttSm9ji7WlVGVgV02Qo=";
+};
+
+acl internal_networks { 10.228.0.0/16; 192.168.42.0/24; 192.168.43.0/24; };
+acl vpn_client_network { 172.16.223.0/24; };
+acl primary_ns_key_acl { key "primary_ns-internal_ns"; };
+
+masters primary_ns_master { 10.228.109.174 key "primary_ns-internal_ns"; };
+
+server 10.228.109.174 { keys { "primary_ns-internal_ns"; }; };
+
+view "internal" {
+ match-clients { internal_networks; vpn_client_network; localhost; };
+
+ recursion yes;
+
+ allow-query { internal_networks; vpn_client_network; localhost; };
+ allow-query-cache { internal_networks; vpn_client_network; localhost; };
+ allow-recursion { internal_networks; vpn_client_network; localhost; };
+
+ allow-notify { primary_ns_key_acl; };
+ notify no;
+
+ include "/etc/named.rfc1912.zones";
+
+ # internal zones
+ zone "in.user.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/in.user.hu.zone";
+ };
+ zone "43.168.192.in-addr.arpa" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/43.168.192.in-addr.arpa.zone";
+ };
+ zone "sr.user.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/sr.user.hu.zone";
+ };
+ zone "42.168.192.in-addr.arpa" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/42.168.192.in-addr.arpa.zone";
+ };
+ zone "usr.user.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/usr.user.hu.zone";
+ };
+ zone "228.10.in-addr.arpa" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/228.10.in-addr.arpa.zone";
+ };
+
+ # perimeter zones
+ zone "pm.user.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/pm.user.hu.zone";
+ };
+ zone "173.168.192.in-addr.arpa" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/173.168.192.in-addr.arpa.zone";
+ };
+
+ # external zones
+ zone "useribm.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/useribm.hu.zone";
+ };
+ zone "userrendszerhaz.hu" IN {
+ type slave;
+ masters { primary_ns_master; };
+ file "slaves/userrendszerhaz.hu.zone";
+ };
+};