RazWall Community
Development => Dev Stuff => Topic started by: razwall on July 29, 2025, 11:25:06 AM
-
{
"bridges" : {
"br0" : {
"interface" : "eth0",
"interfaces" : [
"eth0"
]
},
"br1" : {
"interface" : "eth7",
"interfaces" : [
"eth7"
]
},
"br2" : {
"interface" : "br0.200",
"interfaces" : [
"br0.200"
]
},
"br3" : {
"interface" : "eth2.200",
"interfaces" : [
"eth2.200"
]
},
"br4" : {
"interfaces" : [
"eth0.500"
]
}
},
"dnat" : [
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"xx.xxx.xx.xx"
],
"dst_port" : [
"80"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp"
],
"remark" : "HTTP Example",
"src_dev" : [],
"src_ip" : [
"any"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"80"
]
},
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"xx.xxx.xx.xx"
],
"dst_port" : [
"22"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp"
],
"remark" : "SSL Example",
"src_dev" : [],
"src_ip" : [
"xx.xxx.xx.xx"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"22"
]
},
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"24.111.67.50"
],
"dst_port" : [
"53"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp",
"udp"
],
"remark" : "DNS Example",
"src_dev" : [],
"src_ip" : [
"any"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"53"
]
}
],
"interfaces" : {
"physical" : [
"eth0",
"eth1",
"eth2",
"eth3",
"eth4",
"eth5",
"eth6",
"eth7",
"lo"
],
"virtual" : [
"eth2.200",
"eth0.500"
]
},
"users" : {
"Admin" : "admin:REMOVED"
},
"zones" : {
"LAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "green",
"ZDESC" : "Primary LAN Network",
"ZDHCP" : "off",
"ZIFACE" : "eth0",
"ZNETMASK" : "",
"ZSTRING" : "LAN",
"ZTYPE" : "LAN"
},
"LOCAL" : {
"ZCOLOR" : "black",
"ZDESC" : "Local Loopback Adapter",
"ZIFACE" : "lo",
"ZSTRING" : "loopback",
"ZTYPE" : "LOOPBACK"
},
"PATRON" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "#8000ff",
"ZDESC" : "patron LAN",
"ZDHCP" : "off",
"ZIFACE" : "eth2.200",
"ZNETMASK" : "",
"ZSTRING" : "PATRON",
"ZTYPE" : "LAN"
},
"WAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "red",
"ZDESC" : "Primary Internet Connection",
"ZDHCP" : "off",
"ZIFACE" : "eth1",
"ZNETMASK" : "",
"ZSTRING" : "WAN",
"ZTYPE" : "WAN"
}
}
}
-
Hi,
Good to see the progress with dynamic ZONE creation as the default feature. I came across the IPFire code related to zone creation which is done by "setup" program/module while installing it. Basically it is written in C which is doing the zone creation related steps and interface assignment etc [here is the link. https://github.com/ipfire/ipfire-2.x/blob/master/src/setup/networking.c]. I am thinking to change this bottleneck for IPFire though i am not good in advance c programming [ it is already mentioned by the IPFire author . https://www.ipfire.org/docs/roadmap/get-rid-of-configtype-in-network-config ]. Actually, i am impressed with IPFire because of its build system which gives freedom for any thing as per the developer/user expertise.
Well, i am also waiting for your distro as well. well, it would be good if you make a roadmap of different tasks and ask other on the forum for the development . This will definitely reduce burden on you and also gives opportunity to other to contribute.
-
updated sample...
{
"access" : [],
"bridges" : {
"br0" : {
"interfaces" : [
"eth0"
]
}
},
"dhcp" : [],
"dnat" : [
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"X.X.X.X"
],
"dst_port" : [
"80"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp"
],
"remark" : "HTTP Example",
"src_dev" : [],
"src_ip" : [
"any"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"80"
]
},
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"X.X.X.X"
],
"dst_port" : [
"22"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp"
],
"remark" : "SSL Example",
"src_dev" : [],
"src_ip" : [
"X.X.X.X"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"22"
]
},
{
"collapsed" : true,
"dst_dev" : [],
"dst_ip" : [
"X.X.X.X"
],
"dst_port" : [
"53"
],
"enabled" : true,
"filter_target" : "ACCEPT",
"ip_version" : "4",
"log" : true,
"nat_target" : "DNAT",
"protocol" : [
"tcp",
"udp"
],
"remark" : "DNS Example",
"src_dev" : [],
"src_ip" : [
"any"
],
"target_ip" : [
"192.168.19.87"
],
"target_port" : [
"53"
]
}
],
"hosts" : [],
"interfaces" : {
"physical" : [
"eth0",
"eth1",
"lo"
],
"virtual" : []
},
"out" : [],
"routing" : [],
"snat" : [],
"users" : {
"Admin" : "admin:$apr1$qci0smug$50y/xw0j8s7vsUmW421Zi."
},
"vpnfw" : [],
"vpns" : [],
"vusers" : [],
"zfw" : [],
"zones" : {
"LAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "192.168.55.1",
"ZCOLOR" : "#00ff00",
"ZDESC" : "Primary Network",
"ZDHCP" : "off",
"ZIFACE" : "eth0",
"ZNETMASK" : "/24",
"ZSTRING" : "LAN",
"ZTYPE" : "LAN"
},
"LOCAL" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "black",
"ZDESC" : "Local Loopback Adapter",
"ZDHCP" : "off",
"ZIFACE" : "lo",
"ZNETMASK" : "",
"ZSTRING" : "loopback",
"ZTYPE" : "LOOPBACK"
},
"WAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "red",
"ZDESC" : "Primary Internet Connection",
"ZDHCP" : "on",
"ZIFACE" : "eth1",
"ZNETMASK" : "",
"ZSTRING" : "WAN",
"ZTYPE" : "WAN"
}
}
}
-
{
"access" : [
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "22" ],
"remark" : "Allow SSH from LAN",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "443" ],
"remark" : "Allow HTTPS from LAN",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "80" ],
"remark" : "Allow HTTP from LAN",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "udp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "67","68" ],
"remark" : "Allow DHCP on LAN",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "udp","tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "53" ],
"remark" : "Allow DNS on LAN",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "udp" ],
"src_dev" : [ "eth1" ],
"dst_dev" : [ "fw" ],
"dst_port" : [ "1194" ],
"remark" : "Allow OpenVPN on WAN",
"filter_target" : "ACCEPT",
"log" : false
}
],
"bridges" : {
"br0" : { "interfaces" : [ "eth0" ] }
},
"dhcp" : [],
"dnat" : [
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "eth1" ],
"dst_ip" : [ "X.X.X.X" ],
"dst_port" : [ "80" ],
"target_ip" : [ "192.168.19.87" ],
"target_port" : [ "80" ],
"remark" : "WAN HTTP to internal webserver",
"filter_target" : "ACCEPT",
"nat_target" : "DNAT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "eth1" ],
"dst_ip" : [ "X.X.X.X" ],
"dst_port" : [ "443" ],
"target_ip" : [ "192.168.19.87" ],
"target_port" : [ "443" ],
"remark" : "WAN HTTPS to internal webserver",
"filter_target" : "ACCEPT",
"nat_target" : "DNAT",
"log" : false
}
],
"hosts" : [],
"interfaces" : {
"physical" : [ "eth0","eth1","lo" ],
"virtual" : []
},
"out" : [
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "eth1" ],
"dst_port" : [ "80","443" ],
"remark" : "Allow LAN outbound web",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "all" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "eth1" ],
"remark" : "Block all other outbound from LAN",
"filter_target" : "DROP",
"log" : false
}
],
"routing" : [
{
"type" : "default",
"via" : "<GW1 IP>",
"dev" : "eth1",
"remark" : "Default WAN route"
}
],
"snat" : [
{
"enabled" : true,
"src_dev" : [ "br0" ],
"dst_dev" : [ "eth1" ],
"nat_target" : "SNAT",
"remark" : "MASQUERADE LAN1 to WAN1"
},
{
"enabled" : true,
"src_dev" : [ "br0" ],
"dst_dev" : [ "eth2" ],
"nat_target" : "SNAT",
"remark" : "MASQUERADE LAN1 to WAN2"
}
],
"users" : {
"Admin" : "admin:$apr1$qci0smug$50y/xw0j8s7vsUmW421Zi."
},
"vpnfw" : [
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "tun0" ],
"dst_dev" : [ "br0" ],
"dst_port" : [ "3389" ],
"remark" : "VPN to LAN1 RDP",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "tun0" ],
"dst_dev" : [ "br1" ],
"dst_port" : [ "445" ],
"remark" : "VPN to LAN2 SMB",
"filter_target" : "ACCEPT",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "all" ],
"src_dev" : [ "tun0" ],
"dst_dev" : [ "br0" ],
"remark" : "Block VPN to LAN1",
"filter_target" : "DROP",
"log" : false
},
{
"enabled" : true,
"protocol" : [ "all" ],
"src_dev" : [ "tun0" ],
"dst_dev" : [ "br1" ],
"remark" : "Block VPN to LAN2",
"filter_target" : "DROP",
"log" : false
}
],
"vpns" : [],
"vusers" : [],
"zfw" : [
{
"enabled" : true,
"protocol" : [ "tcp" ],
"src_dev" : [ "br0" ],
"dst_dev" : [ "br1" ],
"dst_port" : [ "3389" ],
"remark" : "LAN1 to LAN2 RDP",
"filter_target" : "ACCEPT",
"log" : false
}
],
"zones" : {
"LAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "192.168.55.1",
"ZCOLOR" : "#00ff00",
"ZDESC" : "Primary Network",
"ZDHCP" : "off",
"ZIFACE" : "eth0",
"ZNETMASK" : "/24",
"ZSTRING" : "LAN",
"ZTYPE" : "LAN"
},
"LOCAL" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "black",
"ZDESC" : "Local Loopback Adapter",
"ZDHCP" : "off",
"ZIFACE" : "lo",
"ZNETMASK" : "",
"ZSTRING" : "loopback",
"ZTYPE" : "LOOPBACK"
},
"WAN" : {
"ZADDITIONAL" : "",
"ZADDRESS" : "",
"ZCOLOR" : "red",
"ZDESC" : "Primary Internet Connection",
"ZDHCP" : "on",
"ZIFACE" : "eth1",
"ZNETMASK" : "",
"ZSTRING" : "WAN",
"ZTYPE" : "WAN"
}
}
}