AETHER-3411 Persist network config across reboot

Change-Id: I295f55eeeab957189e151e1b746c9b856a1aac30
diff --git a/systemd/10-aiab-access.netdev b/systemd/10-aiab-access.netdev
new file mode 100644
index 0000000..e4161ce
--- /dev/null
+++ b/systemd/10-aiab-access.netdev
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[NetDev]
+Name=access
+Kind=macvlan
+
+[MACVLAN]
+Mode=bridge
diff --git a/systemd/10-aiab-core.netdev b/systemd/10-aiab-core.netdev
new file mode 100644
index 0000000..c57e154
--- /dev/null
+++ b/systemd/10-aiab-core.netdev
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[NetDev]
+Name=core
+Kind=macvlan
+
+[MACVLAN]
+Mode=bridge
diff --git a/systemd/10-aiab-dummy.netdev b/systemd/10-aiab-dummy.netdev
new file mode 100644
index 0000000..f53c8f5
--- /dev/null
+++ b/systemd/10-aiab-dummy.netdev
@@ -0,0 +1,6 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[NetDev]
+Name=DATA_IFACE
+Kind=dummy
diff --git a/systemd/10-aiab-enb.netdev b/systemd/10-aiab-enb.netdev
new file mode 100644
index 0000000..28dc3bd
--- /dev/null
+++ b/systemd/10-aiab-enb.netdev
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[NetDev]
+Name=enb
+Kind=macvlan
+
+[MACVLAN]
+Mode=bridge
diff --git a/systemd/20-aiab-access.network b/systemd/20-aiab-access.network
new file mode 100644
index 0000000..2e36924
--- /dev/null
+++ b/systemd/20-aiab-access.network
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=access
+
+[Network]
+IPForward=yes
+Address=192.168.252.1/24
diff --git a/systemd/20-aiab-core.network b/systemd/20-aiab-core.network
new file mode 100644
index 0000000..39e7a53
--- /dev/null
+++ b/systemd/20-aiab-core.network
@@ -0,0 +1,13 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=core
+
+[Network]
+IPForward=yes
+Address=192.168.250.1/24
+
+[Route]
+Gateway=192.168.250.3
+Destination=172.250.0.0/16
diff --git a/systemd/20-aiab-dummy.network b/systemd/20-aiab-dummy.network
new file mode 100644
index 0000000..f891162
--- /dev/null
+++ b/systemd/20-aiab-dummy.network
@@ -0,0 +1,8 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=DATA_IFACE
+
+[Network]
+MACVLAN=enb
diff --git a/systemd/20-aiab-enb.network b/systemd/20-aiab-enb.network
new file mode 100644
index 0000000..e1a4fd3
--- /dev/null
+++ b/systemd/20-aiab-enb.network
@@ -0,0 +1,13 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=enb
+
+[Network]
+IPForward=yes
+Address=192.168.251.3/24
+
+[Route]
+Gateway=192.168.251.1
+Destination=192.168.252.0/24
diff --git a/systemd/20-aiab-lo.network b/systemd/20-aiab-lo.network
new file mode 100644
index 0000000..79e49af
--- /dev/null
+++ b/systemd/20-aiab-lo.network
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=lo
+
+[Address]
+Address=127.0.0.2/8
+Scope=host
diff --git a/systemd/aiab-ue-nat.service b/systemd/aiab-ue-nat.service
new file mode 100644
index 0000000..61364e3
--- /dev/null
+++ b/systemd/aiab-ue-nat.service
@@ -0,0 +1,9 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Service]
+Type=oneshot
+ExecStart=/bin/bash -c "sudo iptables -t nat -C POSTROUTING -s 172.250.0.0/16 -o DATA_IFACE -j MASQUERADE || sudo iptables -t nat -A POSTROUTING -s 172.250.0.0/16 -o DATA_IFACE -j MASQUERADE"
+
+[Install]
+WantedBy=sys-subsystem-net-devices-core.device
diff --git a/systemd/macvlan.conf b/systemd/macvlan.conf
new file mode 100644
index 0000000..5d5bd28
--- /dev/null
+++ b/systemd/macvlan.conf
@@ -0,0 +1,10 @@
+# Copyright 2022-present Open Networking Foundation
+# SPDX-License-Identifier: Apache-2.0
+
+[Match]
+Name=DATA_IFACE
+
+[Network]
+IPForward=yes
+MACVLAN=access
+MACVLAN=core