Need help with x86/64 configuration

Hi all, I need help reviewing my network settings as I have run out of ideas. I have read and followed the openwrt DSA mini guide, searched the forum, and searched the web and youtube.

I am attempting to switch my router from a Netgear XR500 running Openwrt to a x86/64 minipc with multiple intel i226v ports running Openwrt 24.10
I have services/devices on my LAN which requires access to other devices on separate vlans to work. With the x86/64 as my router they run into issues, for example I use the KNX integration in Home Assistant and it fails to tunnel to my KNX server on a separate VLAN via UDP port 3671. However I am able to ping and access the web management page of the KNX server from my laptop on my LAN. Another is Frigate NVR, it has issues accessing RTSP streams from all cameras but using VLC on my laptop I am able to access the streams.
Without changing anything else, merely putting my XR500 router back in service (in place of the x86) brings everything back working as they should.

Please see my settings below, is there something I am doing wrong? Before using the current method I also tried following the DSA mini tutorial of briding all ports and using vlan filtering then assigning the resulting 802.1q vlan devices to the interfaces - that did not work.

Thanks in advance

  • cat /etc/config/network
config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fdf4:b2b4:5418::/48'
        option packet_steering '1'

config interface 'lan'
        option device 'br-vlan8'
        option proto 'static'
        option ipaddr '192.168.8.1'
        option netmask '255.255.255.0'

config interface 'wan'
        option device 'eth0'
        option proto 'dhcp'

config interface 'wan6'
        option device 'eth0'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'
        option norelease '1'

config interface 'homeauto'
        option proto 'static'
        option device 'br-vlan5'
        option ipaddr '192.168.5.1'
        option netmask '255.255.255.0'

config interface 'cams'
        option proto 'static'
        option device 'br-vlan4'
        option ipaddr '192.168.4.1'
        option netmask '255.255.255.0'

config interface 'guest'
        option proto 'static'
        option device 'br-vlan6'
        option ipaddr '192.168.6.1'
        option netmask '255.255.255.0'

config device
        option type 'bridge'
        option name 'br-vlan8'
        list ports 'eth1'
        list ports 'eth2.8'
        list ports 'eth3.8'

config device
        option type 'bridge'
        option name 'br-vlan4'
        list ports 'eth2.4'
        list ports 'eth3.4'

config device
        option type 'bridge'
        option name 'br-vlan5'
        list ports 'eth2.5'
        list ports 'eth3.5'

config device
        option type 'bridge'
        option name 'br-vlan6'
        list ports 'eth2.6'
        list ports 'eth3.6'
  • cat /etc/config/dhcp
config dnsmasq
        option domainneeded '1'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option cachesize '1000'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option localservice '1'
        option ednspacket_max '1232'
        option confdir '/tmp/dnsmasq.d'
        option boguspriv '0'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option dhcpv6 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

config dhcp 'homeauto'
        option interface 'homeauto'
        option start '100'
        option limit '150'
        option leasetime '12h'

config dhcp 'cams'
        option interface 'cams'
        option start '100'
        option limit '150'
        option leasetime '12h'

config dhcp 'guest'
        option interface 'guest'
        option start '100'
        option limit '150'
        option leasetime '12h'
  • cat /etc/config/firewall
config defaults
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        list network 'lan'

config zone
        option name 'wan'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option masq '1'
        option mtu_fix '1'
        list network 'wan'
        list network 'wan6'

config forwarding
        option src 'lan'
        option dest 'wan'

config rule
        option name 'Allow-DHCP-Renew'
        option src 'wan'
        option proto 'udp'
        option dest_port '68'
        option target 'ACCEPT'
        option family 'ipv4'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option icmp_type 'echo-request'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-IGMP'
        option src 'wan'
        option proto 'igmp'
        option family 'ipv4'
        option target 'ACCEPT'

config rule
        option name 'Allow-DHCPv6'
        option src 'wan'
        option proto 'udp'
        option dest_port '546'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-MLD'
        option src 'wan'
        option proto 'icmp'
        option src_ip 'fe80::/10'
        list icmp_type '130/0'
        list icmp_type '131/0'
        list icmp_type '132/0'
        list icmp_type '143/0'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Input'
        option src 'wan'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        list icmp_type 'router-solicitation'
        list icmp_type 'neighbour-solicitation'
        list icmp_type 'router-advertisement'
        list icmp_type 'neighbour-advertisement'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-ICMPv6-Forward'
        option src 'wan'
        option dest '*'
        option proto 'icmp'
        list icmp_type 'echo-request'
        list icmp_type 'echo-reply'
        list icmp_type 'destination-unreachable'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'bad-header'
        list icmp_type 'unknown-header-type'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'

config rule
        option name 'Allow-IPSec-ESP'
        option src 'wan'
        option dest 'lan'
        option proto 'esp'
        option target 'ACCEPT'

config rule
        option name 'Allow-ISAKMP'
        option src 'wan'
        option dest 'lan'
        option dest_port '500'
        option proto 'udp'
        option target 'ACCEPT'

config zone
        option name 'guest_zone'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'guest'

config forwarding
        option src 'guest_zone'
        option dest 'wan'

config zone
        option name 'homeauto_zone'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'homeauto'

config forwarding
        option src 'homeauto_zone'
        option dest 'wan'

config forwarding
        option src 'lan'
        option dest 'homeauto_zone'

config zone
        option name 'cams_zone'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        list network 'cams'

config forwarding
        option src 'lan'
        option dest 'cams_zone'

config forwarding
        option src 'cams_zone'
        option dest 'wan'

config rule
        option name 'guest-DNS-DHCP'
        option src 'guest_zone'
        option dest_port '53 67 68'
        option target 'ACCEPT'

config rule
        option name 'homeauto-DNS-DHCP'
        option src 'homeauto_zone'
        option dest_port '53 67 68'
        option target 'ACCEPT'

config rule
        option name 'cams-DNS-DHCP'
        option src 'cams_zone'
        option dest_port '53 67 68'
        option target 'ACCEPT'

The config looks fine and if there was an issue there you wouldn't have any connectivity at all. You mention that ping and tcp works but udp doesn't.
In the examples it is better to use IPs and not just the names of services. It will be easier to understand in which zone they are.
Finally run a tcpdump for the affected traffic on both interfaces. For example:
tcpdump -i eth2.5 -nn host 192.168.5.100 and host 192.168.6.200
tcpdump -i eth2.6 -nn host 192.168.5.100 and host 192.168.6.200

Thanks for checking my config! Having confirmation that I did not misconfigure openwrt got me out of my tunnel vision.

Turns out my NAS device on which HA and Frigate were installed also had zerotier running which routed traffic to other subnets via the zerotier interface instead of via the regular ethernet interface. I did not realise that was happening all this while. My old XR500 router had zerotier installed while the new x86 one does not which caused the confusion. Removing zerotier off my NAS fixed it.
I also had issues with my z2mqtt device communicating with my ethernet zigbee coordinator but that turns out needed deletion of the z2mqtt database files to start afresh.

Thanks again

1 Like