Howdy misc,
I have an APU2 with the following configuration under 6.8:
em0 = WAN
em1 = bridge0 LAN
em2 = bridge0 LAN
vether = 10.0.0.1
prometheus$ cat /etc/hostname.bridge0
add vether0
add em1
add em2
up
prometheus$ cat /etc/hostname.vether0
inet 10.0.0.1 255.255.255.0 10.0.0.255
I have dhcpd listening on vether0 and it works just fine. I have a
client connected to em1 and it can ping 10.0.0.1 with no issues.
The trouble started when I wanted to implement a switch(4) instead
of the bridge(4):
I moved /etc/hostname.bridge0 to /etc/hostname.switch0
prometheus$ cat /etc/switchd.conf
device "/dev/switch0"
switchd was enabled via rcctl
When I rebooted the system the client on em1 no longer got a dhcp
response and can't ping 10.0.0.1
ifconfig snippet:
switch0: flags=41<UP,RUNNING>
index 6 llprio 3
groups: switch
datapath 0x264921d244b07e9a maxflow 10000 maxgroup 1000
vether0 flags=0<>
port 7 ifpriority 0 ifcost 0
em1 flags=0<>
port 2 ifpriority 0 ifcost 0
em2 flags=0<>
port 3 ifpriority 0 ifcost 0
vether0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> \
mtu 1500
lladdr fe:e1:ba:d0:0b:ca
index 7 priority 0 llprio 3
groups: vether
media: Ethernet autoselect
status: active
inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255
With tcpdump on vether0 I see the arp requests from the client for
10.0.0.1 but vether0 doesn't respond.
I see the same arp traffic on switch0 and em1 via tcpdump too.
The switch seems to have learned the mac address of the client:
prometheus$ switchctl show macs
Switch Port Type Name Info
1 2 mac f0:de:f1:23:13:37 age 3s
Unfortunately, I don't really know how to dig any deeper at this issue.
Does anyone here see a glaring mistake or would be able to nudge me in
a better direction?
Thanks,
John