Network
This commit is contained in:
parent
b8e7b41ad1
commit
750dc27d46
@ -1,4 +1,4 @@
|
|||||||
---
|
---
|
||||||
- hosts: localhost
|
- hosts: localhost
|
||||||
roles:
|
roles:
|
||||||
- dns
|
- network
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Create db.lan
|
|
||||||
# become: yes
|
|
||||||
template:
|
|
||||||
src: etc/bind/db.lan.j2
|
|
||||||
dest: /tmp/etc/bind/db.lan
|
|
||||||
vars:
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
|||||||
$TTL 86400
|
|
||||||
$ORIGIN lan.
|
|
||||||
@ IN SOA lan. dns.lan. (
|
|
||||||
2020072901;
|
|
||||||
604800;
|
|
||||||
86400;
|
|
||||||
2419200;
|
|
||||||
86400;
|
|
||||||
)
|
|
||||||
|
|
||||||
@ IN NS dns.lan.
|
|
||||||
|
|
||||||
DNS IN A {{ network }}.100
|
|
||||||
|
|
||||||
{% for host in hosts %}
|
|
||||||
{{ host.name }} IN A {{ network }}.{{ host.ip }}
|
|
||||||
{% endfor %}
|
|
12
roles/network/tasks/dhcp-file.yml
Normal file
12
roles/network/tasks/dhcp-file.yml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
- name: create build directory
|
||||||
|
file:
|
||||||
|
path: build/dhcp
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: Create dhcpd.conf
|
||||||
|
template:
|
||||||
|
src: etc/dhcpd/dhcpd.conf.j2
|
||||||
|
dest: build/dhcp/dhcpd.conf
|
||||||
|
vars:
|
||||||
|
network: "{{ lan }}"
|
14
roles/network/tasks/dns-file.yml
Normal file
14
roles/network/tasks/dns-file.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
- name: create build directory
|
||||||
|
file:
|
||||||
|
path: build/dns
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: Create db.lan
|
||||||
|
# become: yes
|
||||||
|
template:
|
||||||
|
src: etc/bind/db.lan.j2
|
||||||
|
dest: build/dns/db.lan
|
||||||
|
vars:
|
||||||
|
network: "{{ lan }}"
|
||||||
|
serial: "{{ ansible_date_time.year }}{{ ansible_date_time.month }}{{ ansible_date_time.day }}02"
|
@ -1,3 +1,4 @@
|
|||||||
---
|
---
|
||||||
- import_tasks: dns-file.yml
|
- import_tasks: dns-file.yml
|
||||||
|
|
||||||
|
- import_tasks: dhcp-file.yml
|
17
roles/network/templates/etc/bind/db.lan.j2
Normal file
17
roles/network/templates/etc/bind/db.lan.j2
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
$TTL 86400
|
||||||
|
$ORIGIN {{ network.network_name }}.
|
||||||
|
@ IN SOA {{ network.network_name }}. dns.{{ network.network_name }}. (
|
||||||
|
{{ serial }};
|
||||||
|
604800;
|
||||||
|
86400;
|
||||||
|
2419200;
|
||||||
|
86400;
|
||||||
|
)
|
||||||
|
|
||||||
|
@ IN NS dns.lan.
|
||||||
|
|
||||||
|
DNS IN A {{ network.network_prefix }}.100
|
||||||
|
|
||||||
|
{% for host in network.hosts %}
|
||||||
|
{{ host.name }} IN A {{ network.network_prefix }}.{{ host.ip }}
|
||||||
|
{% endfor %}
|
20
roles/network/templates/etc/dhcpd/dhcpd.conf.j2
Normal file
20
roles/network/templates/etc/dhcpd/dhcpd.conf.j2
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
ddns-update-style none;
|
||||||
|
authorative;
|
||||||
|
|
||||||
|
subnet {{ network.address }} netmask {{ network.mask }} {
|
||||||
|
option domain-name-servers {{ network.dns }};
|
||||||
|
option domain-name "{{ network.network_name }}";
|
||||||
|
option routers {{ network.gateway }};
|
||||||
|
default-lease-time 86400;
|
||||||
|
max-lease-time 86400;
|
||||||
|
{% if network.range_start is defined %}
|
||||||
|
range {{ network.range_start }} {{ network.range_end }};
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% for host in network.hosts %}
|
||||||
|
host {{ host.name }} { hardware ethernet {{ host.mac }}; fixed-address {{ network.network_prefix }}.{{ host.ip }}; }
|
||||||
|
{% if host.mac2 is defined %}
|
||||||
|
host {{ host.name }}_2 { hardware ethernet {{ host.mac2 }}; fixed-address {{ network.network_prefix }}.{{ host.ip }}; }
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
}
|
@ -1,55 +1,52 @@
|
|||||||
---
|
---
|
||||||
lan:
|
lan:
|
||||||
network: 192.168.50
|
network_prefix: 192.168.50
|
||||||
|
network_name: lan
|
||||||
|
address: 192.168.50.0
|
||||||
|
mask: 255.255.255.0
|
||||||
|
gateway: 192.168.50.2
|
||||||
|
dns: 192.168.50.100
|
||||||
|
range_start: 192.168.50.200
|
||||||
|
range_end: 192.168.50.250
|
||||||
hosts:
|
hosts:
|
||||||
- name: router
|
- name: router
|
||||||
ip: 2
|
ip: 2
|
||||||
|
mac: 2c:b0:5d:4a:72:62
|
||||||
- name: bender
|
- name: bender
|
||||||
ip: 3
|
ip: 3
|
||||||
- name: openhab
|
mac: e0:3f:49:6f:03:c2
|
||||||
|
- name: prusa-new
|
||||||
|
ip: 4
|
||||||
|
mac: b8:27:eb:96:f3:3f
|
||||||
|
mac2: b8:27:eb:c3:a6:6a
|
||||||
|
- name: home-assistant
|
||||||
ip: 5
|
ip: 5
|
||||||
- name: access-point
|
mac: dc:a6:32:8b:7b:ab
|
||||||
ip: 6
|
mac2: 6a:1b:c8:63:58:7a
|
||||||
- name: iron-man
|
- name: iron-man
|
||||||
ip: 7
|
ip: 7
|
||||||
|
mac: dc:a6:32:03:6d:fa
|
||||||
- name: prusa
|
- name: prusa
|
||||||
ip: 8
|
ip: 8
|
||||||
|
mac: b8:27:eb:ff:2a:86
|
||||||
- name: farnsworth
|
- name: farnsworth
|
||||||
ip: 21
|
ip: 21
|
||||||
- name: groot
|
mac: e0:3f:49:83:e8:dd
|
||||||
ip: 22
|
|
||||||
- name: xbox
|
|
||||||
ip: 31
|
|
||||||
- name: wii
|
|
||||||
ip: 32
|
|
||||||
- name: ps3
|
|
||||||
ip: 33
|
|
||||||
- name: ps4
|
|
||||||
ip: 34
|
|
||||||
- name: vita
|
|
||||||
ip: 35
|
|
||||||
- name: switch
|
|
||||||
ip: 36
|
|
||||||
- name: ipad
|
- name: ipad
|
||||||
ip: 46
|
ip: 46
|
||||||
|
mac: b8:63:4d:b6:4c:bc
|
||||||
- name: android-sgs9
|
- name: android-sgs9
|
||||||
ip: 47
|
ip: 47
|
||||||
- name: tv
|
mac: 24:18:1d:bc:fe:4f
|
||||||
ip: 50
|
|
||||||
- name: soundbar
|
|
||||||
ip: 51
|
|
||||||
- name: shield
|
|
||||||
ip: 52
|
|
||||||
- name: printer
|
|
||||||
ip: 64
|
|
||||||
- name: kindle
|
|
||||||
ip: 70
|
|
||||||
- name: node-01
|
- name: node-01
|
||||||
ip: 101
|
ip: 101
|
||||||
|
mac: dc:a6:32:03:6d:fa
|
||||||
- name: node-02
|
- name: node-02
|
||||||
ip: 102
|
ip: 102
|
||||||
|
mac: dc:a6:32:3c:0f:ff
|
||||||
- name: node-03
|
- name: node-03
|
||||||
ip: 103
|
ip: 103
|
||||||
|
mac: dc:a6:32:3c:1a:ec
|
||||||
iot:
|
iot:
|
||||||
network: 192.168.60
|
network: 192.168.60
|
||||||
hosts:
|
hosts:
|
||||||
@ -86,6 +83,12 @@ iot:
|
|||||||
- name: router-power-outlet
|
- name: router-power-outlet
|
||||||
ip: 14
|
ip: 14
|
||||||
mac: cc:32:e5:69:7a:da
|
mac: cc:32:e5:69:7a:da
|
||||||
|
- name: tv
|
||||||
|
ip: 15
|
||||||
|
mac: c0:48:e6:1f:ca:a7
|
||||||
|
- name: soundbar
|
||||||
|
ip: 16
|
||||||
|
mac: cc:6e:a4:2a:06:4e
|
||||||
- name: camera-livingroom
|
- name: camera-livingroom
|
||||||
ip: 20
|
ip: 20
|
||||||
mac: 78:11:dc:7b:4d:04
|
mac: 78:11:dc:7b:4d:04
|
||||||
@ -102,17 +105,40 @@ equipment:
|
|||||||
hosts:
|
hosts:
|
||||||
- name: nvidia-shield
|
- name: nvidia-shield
|
||||||
ip: 10
|
ip: 10
|
||||||
|
# ip: 11
|
||||||
mac: 00:04:4b:cd:a6:5b
|
mac: 00:04:4b:cd:a6:5b
|
||||||
- name: nvidia-shield-wifi
|
mac2: 00:04:4b:cd:a6:59
|
||||||
|
- name: kindle
|
||||||
ip: 11
|
ip: 11
|
||||||
mac: 00:04:4b:cd:a6:59
|
mac: 68:54:FD:BB:06:61
|
||||||
- name: ps4
|
|
||||||
ip: 12
|
|
||||||
mac: 00:d9:d1:76:7b:c5
|
|
||||||
- name: nintendo-switch-wifi
|
|
||||||
ip: 15
|
|
||||||
mac: 64:b5:c6:6f:ff:a8
|
|
||||||
- name: printer
|
- name: printer
|
||||||
ip: 17
|
ip: 17
|
||||||
mac: 38:9d:92:d0:6d:8e
|
mac: 38:9d:92:d0:6d:8e
|
||||||
|
- name: wii
|
||||||
|
ip: 21
|
||||||
|
mac: 00:1e:35:e7:b3:a0
|
||||||
|
- name: xbox
|
||||||
|
ip: 22
|
||||||
|
mac: 7c:ed:8d:0f:c6:63
|
||||||
|
- name: ps3
|
||||||
|
ip: 23
|
||||||
|
mac: 00:1d:0d:c2:07:b0
|
||||||
|
- name: ps-vita
|
||||||
|
ip: 34
|
||||||
|
mac: 00:d9:d1:4f:8f:91
|
||||||
|
- name: ps4
|
||||||
|
ip: 25
|
||||||
|
mac: 00:d9:d1:76:7b:c5
|
||||||
|
- name: nintendo-switch
|
||||||
|
ip: 26
|
||||||
|
mac: 64:b5:c6:6f:ff:a8
|
||||||
|
|
||||||
|
management:
|
||||||
|
network: 192.168.1
|
||||||
|
hosts:
|
||||||
|
- name: router
|
||||||
|
ip: 1
|
||||||
|
- name: switch
|
||||||
|
ip: 2
|
||||||
|
- name: access-point
|
||||||
|
ip: 3
|
Loading…
Reference in New Issue
Block a user