Kia ora,

I am having a similar problem as discussed here:

http://kerneltrap.org/mailarchive/openbsd-misc/2010/8/24/6489

However I am running latest stable on sunfire v215

OpenBSD ufb-fw.ufb.net.nz 4.8 GENERIC#86 sparc64

I am running double NAT but unfortunately at this point it is the only
option for this machine.

My interfaces are configured:

# cat /etc/hostname.bge0
dhcp
up
rtsol

# cat /etc/hostname.bge1
up

# cat /etc/hostname.bge2
up

# cat /etc/hostname.bge3
up

# cat /etc/hostname.vether0
inet 192.168.1.1 255.255.255.0 NONE description "bridge port with ip"

# cat /etc/hostname.bridge0
description "bridge for internal"
add vether0
add bge1
add bge2
add bge3
up

# cat /etc/rc.conf.local
ntpd_flags=             # enabled during install
dhcpd_flags="vether0"


# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33160
        priority: 0
        groups: lo
        inet 127.0.0.1 netmask 0xff000000
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        lladdr 00:14:4f:b1:b4:62
        priority: 0
        groups: egress
        media: Ethernet autoselect (100baseTX full-duplex,rxpause,txpause)
        status: active
        inet6 fe80::214:4fff:feb1:b462%bge0 prefixlen 64 scopeid 0x1
        inet 10.0.0.10 netmask 0xffffff00 broadcast 10.0.0.255
bge1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST>
mtu 1500
        lladdr 00:14:4f:b1:b4:63
        priority: 0
        media: Ethernet autoselect (1000baseT full-duplex,rxpause,txpause)
        status: active
        inet6 fe80::214:4fff:feb1:b463%bge1 prefixlen 64 scopeid 0x2
bge2: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST>
mtu 1500
        lladdr 00:14:4f:b1:b4:64
        priority: 0
        media: Ethernet autoselect (1000baseT full-duplex,rxpause,txpause)
        status: active
        inet6 fe80::214:4fff:feb1:b464%bge2 prefixlen 64 scopeid 0x3
bge3: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST>
mtu 1500
        lladdr 00:14:4f:b1:b4:65
        priority: 0
        media: Ethernet autoselect (none)
        status: no carrier
        inet6 fe80::214:4fff:feb1:b465%bge3 prefixlen 64 scopeid 0x4
enc0: flags=0<>
        priority: 0
        groups: enc
        status: active
vether0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        lladdr fe:e1:ba:d0:e5:34
        description: bridge port with ip
        priority: 0
        groups: vether
        media: Ethernet autoselect
        status: active
        inet 192.168.1.1 netmask 0xffffff00 broadcast 192.168.1.255
        inet6 fe80::fce1:baff:fed0:e534%vether0 prefixlen 64 scopeid 0x7
bridge0: flags=41<UP,RUNNING>
        description: bridge for internal
        groups: bridge
        priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp
        bge3 flags=3<LEARNING,DISCOVER>
                port 4 ifpriority 0 ifcost 0
        bge2 flags=3<LEARNING,DISCOVER>
                port 3 ifpriority 0 ifcost 0
        bge1 flags=3<LEARNING,DISCOVER>
                port 2 ifpriority 0 ifcost 0
        vether0 flags=3<LEARNING,DISCOVER>
                port 7 ifpriority 0 ifcost 0
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33160
        priority: 0
        groups: pflog
#

Bridge is showing that it has learned the various mac addresses:
# ifconfig bridge0
bridge0: flags=41<UP,RUNNING>
        description: bridge for internal
        groups: bridge
        priority 32768 hellotime 2 fwddelay 15 maxage 20 holdcnt 6 proto rstp
        designated: id 00:00:00:00:00:00 priority 0
        bge3 flags=3<LEARNING,DISCOVER>
                port 4 ifpriority 0 ifcost 0
        bge2 flags=3<LEARNING,DISCOVER>
                port 3 ifpriority 0 ifcost 0
        bge1 flags=3<LEARNING,DISCOVER>
                port 2 ifpriority 0 ifcost 0
        vether0 flags=3<LEARNING,DISCOVER>
                port 7 ifpriority 0 ifcost 0
        Addresses (max cache: 100, timeout: 240):
                00:27:13:64:e3:df bge2 0 flags=0<>
                08:00:27:5b:9d:b6 bge1 1 flags=0<>
                00:0e:86:15:81:bf bge1 0 flags=0<>
                00:0e:86:15:80:63 bge1 0 flags=0<>
                00:0e:86:16:39:c4 bge1 0 flags=0<>
                00:13:fa:04:ae:44 bge1 1 flags=0<>
                48:5b:39:b5:b4:63 bge1 1 flags=0<>
                d8:5d:4c:e1:d3:16 bge1 1 flags=0<>
                6c:62:6d:7b:c8:05 bge1 1 flags=0<>

And daemon log is showing that vether0 is receiving dhcprequests and
sending acks - but the acks never reach clients.

I am able to statically add IP's on client and get them to work: (the
.11 host in the routing table for example)

# route show
Routing tables

Internet:
Destination        Gateway            Flags   Refs      Use   Mtu  Prio Iface
default            SpeedTouch.lan     UGS       61     4163     -     8 bge0
10.0.0/24          link#1             UC         1        0     -     4 bge0
ufb-fw.lan         localhost          UGHS       0        0 33160     8 lo0
SpeedTouch.lan     00:90:d0:72:87:38  UHLc      15      481     -     4 bge0
loopback           localhost          UGRS       0        0 33160     8 lo0
localhost          localhost          UH         2        0 33160     4 lo0
192.168.1/24       link#7             UC         1        0     -     4 vether0
192.168.1.11       48:5b:39:b5:b4:63  UHLc       1     6493     - L   4 vether0


And if I remove the bridge and use bge1 directly as the dhcpd
interface clients get IP's (although strangely are unable to ping each
other, but can ping the router and get internet).


# cat /etc/dhcpd.conf
option domain-name "ufb.net.nz";
option domain-name-servers 10.0.0.138;



default-lease-time 2400;
max-lease-time 7200;

#subnet 10.37.0.0 netmask 255.255.255.0 {
#  range 10.37.0.50 10.37.0.254;
#  option routers 10.37.0.1;
#  option domain-name-servers 10.0.0.138;
#}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.10 192.168.1.100;
  option routers 192.168.1.1;
  option domain-name-servers 10.0.0.138;
}
#

i've tried this with both a minimal permisive pf set and my normal
(same results with both).


# pfctl -s rules
match out on bge0 inet proto tcp from 192.168.1.0/24 to !
192.168.1.0/24 nat-to (bge0) round-robin
match out on bge0 inet proto udp from 192.168.1.0/24 to !
192.168.1.0/24 nat-to (bge0) round-robin
match out on bge0 inet proto icmp from 192.168.1.0/24 to !
192.168.1.0/24 nat-to (bge0) round-robin
pass in quick inet proto tcp from 0.0.0.0 to <tbl.r9998.d> port = ssh
flags any keep state label "RULE 9998 -- ACCEPT "
block drop in log quick on bge0 inet from <tbl.r9998.d> to any label
"RULE 0 -- DROP "
block drop in log quick on bge0 inet from 192.168.1.0/24 to any label
"RULE 0 -- DROP "
pass quick on lo inet all flags S/SA keep state label "RULE 1 -- ACCEPT "
pass quick on vether0 inet from 192.168.1.0/24 to 192.168.1.0/24 flags
S/SA keep state label "RULE 2 -- ACCEPT "
pass in quick inet proto icmp from 192.168.1.0/24 to <tbl.r9998.d>
keep state label "RULE 3 -- ACCEPT "
pass in quick inet proto tcp from 192.168.1.0/24 to <tbl.r9998.d> port
= ssh flags any keep state label "RULE 3 -- ACCEPT "
pass in quick inet proto tcp from 192.168.1.0/24 to <tbl.r9998.d> port
= domain flags any keep state label "RULE 3 -- ACCEPT "
pass in quick inet proto udp from 192.168.1.0/24 to <tbl.r9998.d> port
= domain keep state label "RULE 3 -- ACCEPT "
pass in quick inet proto udp from <tbl.r4.s> to <tbl.r9998.d> port =
bootpc keep state label "RULE 4 -- ACCEPT "
pass in quick inet proto udp from <tbl.r4.s> to <tbl.r9998.d> port =
bootps keep state label "RULE 4 -- ACCEPT "
pass quick inet proto udp from <tbl.r4.sx> to 255.255.255.255 port =
bootpc keep state label "RULE 4 -- ACCEPT "
pass quick inet proto udp from <tbl.r4.sx> to 255.255.255.255 port =
bootps keep state label "RULE 4 -- ACCEPT "
pass out quick inet proto udp from <tbl.r9998.d> to 192.168.1.0/24
port = bootpc keep state label "RULE 5 -- ACCEPT "
pass out quick inet proto udp from <tbl.r9998.d> to 192.168.1.0/24
port = bootps keep state label "RULE 5 -- ACCEPT "
pass out quick inet proto icmp from <tbl.r9998.d> to any keep state
label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> port = ftp-data to
any port >= 1024 flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port = domain
flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port = www
flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port = https
flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port = ssh
flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port = ftp
flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto tcp from <tbl.r9998.d> to any port =
ftp-data flags any keep state label "RULE 6 -- ACCEPT "
pass out quick inet proto udp from <tbl.r9998.d> to any port = domain
keep state label "RULE 6 -- ACCEPT "
block drop in log quick inet from any to <tbl.r9998.d> label "RULE 7 -- DROP "
pass quick inet from 192.168.1.0/24 to any flags S/SA keep state label
"RULE 8 -- ACCEPT "
block drop log quick inet all label "RULE 9 -- DROP "
block drop quick inet all label "RULE 10000 -- DROP "
#


I am really tearing my hair out on this one - best I can understand
there appears to be some sort of arp dropping/blocking somewhere.

console is /e...@1f,464000/ser...@2,80
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2010 OpenBSD. All rights reserved.  http://www.OpenBSD.org

OpenBSD 4.8 (GENERIC) #86: Mon Aug 16 09:09:34 MDT 2010
    dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC
real mem = 1073741824 (1024MB)
avail mem = 1044054016 (995MB)
mainbus0 at root: Sun Fire V215
cpu0 at mainbus0: SUNW,UltraSPARC-IIIi (rev 3.4) @ 1504 MHz
cpu0: physical 32K instruction (32 b/l), 64K data (32 b/l), 1024K
external (64 b/l)
"memory-controller" at mainbus0 not configured
pyro0 at mainbus0: "Fire", rev 3, ign 780, bus A 2 to 13
pyro0: dvma map c0000000-ffffffff
pci0 at pyro0
ppb0 at pci0 dev 0 function 0 "PLX PEX 8532" rev 0xbb
pci1 at ppb0 bus 3
ppb1 at pci1 dev 1 function 0 "PLX PEX 8532" rev 0xbb
pci2 at ppb1 bus 4
ppb2 at pci2 dev 0 function 0 "Acer Labs M5249 PCI-PCI" rev 0x00
pci3 at ppb2 bus 5
ohci0 at pci3 dev 28 function 0 "Acer Labs M5237 USB" rev 0x03: ivec
0x780, version 1.0, legacy support
ohci1 at pci3 dev 28 function 1 "Acer Labs M5237 USB" rev 0x03: ivec
0x780, version 1.0, legacy support
ehci0 at pci3 dev 28 function 3 "Acer Labs M5239 USB2" rev 0x01: ivec 0x781
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Acer Labs EHCI root hub" rev 2.00/1.00 addr 1
ebus0 at pci3 dev 30 function 0 "Acer Labs M1575 ISA" rev 0x00
rtc0 at ebus0 addr 70-73: m5823
pciide0 at pci3 dev 31 function 0 "Acer Labs M5229 UDMA IDE" rev 0xc8:
DMA, channel 0 configured to native-PCI, channel 1 configured to
native-PCI
pciide0: using ivec 0x784 for native-PCI interrupt
pciide0: channel 0 disabled (no drives)
pciide0: channel 1 disabled (no drives)
usb1 at ohci0: USB revision 1.0
uhub1 at usb1 "Acer Labs OHCI root hub" rev 1.00/1.00 addr 1
usb2 at ohci1: USB revision 1.0
uhub2 at usb2 "Acer Labs OHCI root hub" rev 1.00/1.00 addr 1
ppb3 at pci1 dev 2 function 0 "PLX PEX 8532" rev 0xbb: ivec 0x794
pci4 at ppb3 bus 6
ppb4 at pci1 dev 8 function 0 "PLX PEX 8532" rev 0xbb: ivec 0x794
pci5 at ppb4 bus 7
ppb5 at pci1 dev 9 function 0 "PLX PEX 8532" rev 0xbb
pci6 at ppb5 bus 8
ppb6 at pci6 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
pci7 at ppb6 bus 9
bge0 at pci7 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3
(0x9003): ivec 0x795, address 00:14:4f:b1:b4:62
brgphy0 at bge0 phy 1: BCM5714 10/100/1000baseT/SX PHY, rev. 0
bge1 at pci7 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3
(0x9003): ivec 0x796, address 00:14:4f:b1:b4:63
brgphy1 at bge1 phy 1: BCM5714 10/100/1000baseT/SX PHY, rev. 0
ppb7 at pci7 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
pci8 at ppb7 bus 10
ppb8 at pci1 dev 10 function 0 "PLX PEX 8532" rev 0xbb
pci9 at ppb8 bus 11
ppb9 at pci9 dev 0 function 0 "ServerWorks PCIE-PCIX" rev 0xb5
pci10 at ppb9 bus 12
bge2 at pci10 dev 4 function 0 "Broadcom BCM5714" rev 0xa3, BCM5715 A3
(0x9003): ivec 0x796, address 00:14:4f:b1:b4:64
brgphy2 at bge2 phy 1: BCM5714 10/100/1000baseT/SX PHY, rev. 0
bge3 at pci10 dev 4 function 1 "Broadcom BCM5714" rev 0xa3, BCM5715 A3
(0x9003): ivec 0x797, address 00:14:4f:b1:b4:65
brgphy3 at bge3 phy 1: BCM5714 10/100/1000baseT/SX PHY, rev. 0
ppb10 at pci10 dev 8 function 0 "ServerWorks HT-1000 PCIX" rev 0xb4
pci11 at ppb10 bus 13
mpi0 at pci11 dev 1 function 0 "Symbios Logic SAS1064" rev 0x02: ivec 0x78f
scsibus0 at mpi0: 63 targets
sd0 at scsibus0 targ 0 lun 0: <SEAGATE, ST973402SSUN72G, 0603> SCSI3
0/direct fixed
sd0: 70007MB, 512 bytes/sec, 143374738 sec total
pyro1 at mainbus0: "Fire", rev 3, ign 7c0, bus B 2 to 255
pyro1: dvma map c0000000-ffffffff
pci12 at pyro1
ebus1 at mainbus0: ign 7c0
"flashprom" at ebus1 addr 0-1fffff not configured
com0 at ebus1 addr 80-87 ivec 0x8: ns16550a, 16 byte fifo
com0: console
com1 at ebus1 addr 40-47 ivec 0x9: ns16550a, 16 byte fifo
"rmc-comm" at ebus1 addr 0-7 ivec 0xa not configured
"gpio" at ebus1 addr c0-c0 not configured
led0 at ebus1 addr 0-80: rev 0x5a
power0 at ebus1 addr 40-c1 ivec 0x3
"i2c" at mainbus0 not configured
softraid0 at root
bootpath: /p...@1e,600000/p...@0,0/p...@a,0/p...@0,0/p...@8,0/s...@1,0/d...@0,0
root on sd0a swap on sd0b dump on sd0b





Any help/suggestions, greatly appreciated.

Kind regards

-JoelW

Reply via email to