summaryrefslogtreecommitdiff
path: root/config/networking/services
diff options
context:
space:
mode:
Diffstat (limited to 'config/networking/services')
-rw-r--r--config/networking/services/default.nix12
-rw-r--r--config/networking/services/firewall/ruleset.nix6
-rw-r--r--config/networking/services/ppp.nix29
3 files changed, 42 insertions, 5 deletions
diff --git a/config/networking/services/default.nix b/config/networking/services/default.nix
index 623a1c7..12c1a03 100644
--- a/config/networking/services/default.nix
+++ b/config/networking/services/default.nix
@@ -1,3 +1,11 @@
-{...}: {
- imports = [./ap.nix ./dhcp.nix ./dns.nix ./firewall ./ifplugd.nix ./igmpproxy.nix];
+{ ... }: {
+ imports = [
+ ./ap.nix
+ ./dhcp.nix
+ ./dns.nix
+ ./firewall
+ ./ifplugd.nix
+ ./igmpproxy.nix
+ ./ppp.nix
+ ];
}
diff --git a/config/networking/services/firewall/ruleset.nix b/config/networking/services/firewall/ruleset.nix
index ada3518..cbd7631 100644
--- a/config/networking/services/firewall/ruleset.nix
+++ b/config/networking/services/firewall/ruleset.nix
@@ -171,7 +171,7 @@ in
''
+ conntrack
+ ''
- meta oifname enp4s0 goto extranet
+ meta oifname ppp0 goto extranet
meta iifname . meta oifname vmap \
{ wan . iot : goto wan_iot \
, iot . wan : goto iot_wan \
@@ -187,8 +187,8 @@ in
priority = "srcnat";
policy = "accept";
rules = ''
- meta oifname enp4s0 \
- snat to ${interfaces.all.enp4s0.machines.self.ip}
+ meta oifname ppp0 \
+ masquerade
'';
};
};
diff --git a/config/networking/services/ppp.nix b/config/networking/services/ppp.nix
new file mode 100644
index 0000000..15134df
--- /dev/null
+++ b/config/networking/services/ppp.nix
@@ -0,0 +1,29 @@
+{ ... }:
+{
+ networking = {
+ interfaces.enp4s0 = {
+ useDHCP = false;
+ ipv4.addresses = [ ];
+ };
+
+ vlans."enp4s0.7" = {
+ id = 7;
+ interface = "enp4s0";
+ };
+ };
+
+ services.pppd = {
+ enable = true;
+ peers.deutschtelekom = {
+ enable = true;
+ config = ''
+ plugin pppoe.so enp4s0.7
+ user "0022166749927300145510810001@t-online.de"
+ noauth
+ defaultroute
+ persist
+ '';
+ # password in /etc/ppp/{pap,chap}-secrets
+ };
+ };
+}