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

Reply via email to