24 lines
		
	
	
		
			487 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
		
		
			
		
	
	
			24 lines
		
	
	
		
			487 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| 
								 | 
							
								{ lib, ... }: { ip4, ip6, extraConfig }:
							 | 
						||
| 
								 | 
							
								lib.mkMerge [
							 | 
						||
| 
								 | 
							
								  {
							 | 
						||
| 
								 | 
							
								    boot.kernel.sysctl = {
							 | 
						||
| 
								 | 
							
								      "net.ipv6.conf.all.forwarding" = "1";
							 | 
						||
| 
								 | 
							
								      "net.ipv6.conf.default.forwarding" = "1";
							 | 
						||
| 
								 | 
							
								      "net.ipv4.ip_forward" = "1";
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    networking.useDHCP = false;
							 | 
						||
| 
								 | 
							
								    networking.interfaces.eth1 = {
							 | 
						||
| 
								 | 
							
								      ipv4.addresses = [{
							 | 
						||
| 
								 | 
							
								        address = ip4;
							 | 
						||
| 
								 | 
							
								        prefixLength = 24;
							 | 
						||
| 
								 | 
							
								      }];
							 | 
						||
| 
								 | 
							
								      ipv6.addresses = [{
							 | 
						||
| 
								 | 
							
								        address = ip6;
							 | 
						||
| 
								 | 
							
								        prefixLength = 64;
							 | 
						||
| 
								 | 
							
								      }];
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  extraConfig
							 | 
						||
| 
								 | 
							
								]
							 |