I have written my first real (I've toyed around quit a bit) set of pf rules and I was wondering if people on the list would take a minute or two (ok maybe more than that actually) to evaluate them and let me and other n00bs to pf, know if I have come even close to what a complete/sane/efficient set of rules should contain (or more than what it should contain for that matter). I have tried to be concise with my rules and i also tried to comment on the rules as much as possible so any reasoning for a rule will hopefully be there. If it matters I have pasted my dmesg at the bottom so all hardware info will be there. This is a completely stock install of 4.2.

Thanks in advance and thanks for a great OS.

Aaron.

PF.CONF

#
# TB firewall configuration file.
# Pleas append modification dates/time/explanations at the end of this
# section in a line preceded with a # mark,  each  change on a new line.
#
#
# PF enabled in /etc/rc.conf.local  "pf=YES"
# Remember, to make this machine work as a gateway
# using carp interfaces that assume command
# you have to tweak sysctl:
#       net.inet.ip.forwarding=1
#       net.inet.carp.allow=1
#       net.inet.carp.preempt=1
#       net.inet.carp.log=1
#
# Since we use host names in this file
# you will need to keep the /etc/hosts file
# up to date.
#
# To show the effective pf-rules:
#        pfctl -s rules
#
# To reload your ruleset:
#        pfctl -Rf /path/to/ruleset
#
# To flush your ruleset:
#        pfctl -F all
#
# To flush just states:
#       pfctl -Fs
#
# To test your changes before reloading ruleset:
#       pfctl -nf /etc/pf.conf
#       pfctl -nvf /etc/pf.conf  (more verbose)
#
#
# change:11/25/07:22:30- added <sshbruteforce> table to handle overload of
# brute force ssh and telnet traffic.
#
#

# PHRASE MACROS
#

bio             = "block in on"
bolo            = "block out log on"
boo             = "block out on"
bilo            = "block in log on"
bilqo           = "block in log quick on"
biqo            = "block in quick on"
fat             = "from any to"
fata            = "from any to any"
pio             = "pass in on"
poo             = "pass out on"
pqo             = "pass quick on"
pilo            = "pass in log on"
pilqo           = "pass in log quick on"
piqo            = "pass in quick on"
#ip              = "inet proto"
ms              = "modulate state"
tu              = "{ tcp udp }"
icmpt           = "icmp-type echoreq"


# INTERFACE MACROS


# Local interfaces and addresses

wanp_if         = "fxp0"                # san0 without cisco
wanp_ip         = "fxp0"                # san0 without cisco
#wanp           = "san0"
wanb_if         = "fxp1"
wanb_ip         = "fxp1"
wan_ifs         = "{ fxp0 fxp1 }"       # different with san
#wan_ifs                = "{ san0 fxp1 }"
wanp_carp_if    = "carp0"               # this won't exist with san
wanp_carp_ip    = "carp0"               # this won't exist with san
wanb_carp_if    = "carp1"
wanb_carp_ip    = "carp1"
wan_carp_ifs    = "{ carp0 carp1 }"
wan_carp_ips    = "{ carp0 carp1 }"
carp_ifs        = "{ carp0 carp1 carp2 carp3 }"
carp_ips        = "{ carp0 carp1 carp2 carp3 }"

dmz_carp_if     = "carp2"
dmz_carp_ip     = "carp2"
lan_carp_if     = "carp3"
lan_carp_ip     = "carp3"


dmz_if          = "fxp2"
dmz_ip          = "fxp2"
dmz_net         = "carp2:network"
lan_if          = "fxp3"
lan_ip          = "fxp3"
lan_net         = "carp3:network"
pfsync_if       = "rl0"
pfsync_ip       = "rl0"

web_servers     = "{ gargoyle smtp-out scrappy }"
smtp_servers    = "{ gargoyle }"
lan_smtp_servers= "{ gargoyle smtp-out }"
dns_servers     = "{ ns1 ns2 }"
ftp_servers     = "{ ftp tbcnexpress }"
ext_dns_servers = "{ 20.70.3.56 2.70.46.6 }"
ext_time_servers= "{ pool.ntp.org }"

vpnsgb_net      = "192.168.1.0/24"
vpnrw_net       = "10.4.0.0/24"
vpnnoc_net      = "10.5.0.0/24"
vpntunnel_net   = "10.3.0.0/24"
sgbpub_ips      = "{ 10.123.123.135 12.123.123.59 }"
noc_ips         = "{ 3.4.5.128 5.4.6.68 5.4.6.69 }"
ori_ips      = "1.2.3.184"
tbcn_ssh         = "1068"
topform_ssh     = "1055"
#freehosts      = "{ joe mike sam }"

# Lists

# These are ports we don't want to let in as destination ports. We don't have # any servies, including ftp that will use these as we assign a range for ftp
# ports.
specialports_tcp= "{ 6670 1243 27374 6711:6713 12345:12346 20034 137:139 445 55117 1080 }"
# 1080=SubSeven 2.2/WinHole 1243=SubSevenApocalypse # # #

specialports_udp= "{ 1243 27374 28431 31337:31338 137:139 445 1900 67 68 }"

#
# client out macros
# ports that the lan clients are allowed out on.  Lan machines don't need
# to connect to the internet on smtp and a lot
# of other ports that are for games
# or chatting only.
lan_dmz_tcp = "{ www https ssh telnet ftp imap imaps 10000 47568 8081 ntp 4444 5555 }"
lan_dmz_udp             = "{ ntp 1195 }"
lan_out_tcp             = "{ www https ssh telnet ftp ntp }"
lan_out_udp             = "{ ntp }"

# let the vpn come into the lan for remote desktop.  anything else needs
# to be specifically requested.
vpn_lan         = "3389"
# 3389=rdp protocol for remote desktop


#
#       **** TABLES ****
# Tables are similar to lists however they don't suffer from the problem
# of negated lists and they are faster on lookups while using less
# memory.
#

# Local nets minus the firewall interface
table <dmz_hosts> const { $dmz_carp_if:network !carp2 }
table <lan_hosts> const { $lan_carp_if:network !carp3 }
table <internet> persist { !$dmz_net !self !$lan_net  }

table <bogons> const persist file "/etc/pf/tables/bogon-bn-nonagg.txt"

table <badguys> persist
table <dmz_badguys> persist
table <sshbruteforce> persist

# List of ips collected on ftp machine of people
# trying to log into administrator and inetuser accts
# which we don't have.
table <ftpbreakins> persist file "/etc/pf/tables/ftpbreaks"


#
#
# Rules set options
#
#

set limit               { states 20000, frags 10000 }
set block-policy        drop
set timeout             { frag 10 tcp.established 3600 }
set skip on lo
set fingerprints        "/etc/pf.os"


#
# Normalization
#

# scrub out on { $wan_carp_ifs } random-id # (use modulate state out instead)
# can't do macro expansion so have to spread this over 3 lines
scrub in on $carp_ifs  random-id
scrub in on $wan_ifs random-id
scrub in on { $lan_if $dmz_if } random-id

##########################################################
#
# Translation
#
##########################################################

##########################################
#
# Nat the LAN out
#
##########################################
nat on $wanp_if inet from <lan_hosts> to any -> $wanp_carp_ip
nat on $wanb_if inet from <lan_hosts> to any -> $wanb_carp_ip

#############################################
#
# Internet to lan redirections  (BADDDD IDEA)
#
#############################################
rdr on $wan_ifs proto tcp $fat tal_rts port { www 4444 } -> 192.168.47.8
rdr on $wan_ifs proto tcp $fat bec port www -> 192.168.47.5

##############################################
# Root DNS servers are better than our ISP's.
# cache it too for faster lookups.
##############################################
rdr pass on $lan_if proto $tu from <lan_hosts> to any port domain -> 127.0.0.1

########################################
#
# FTP-PROXY
# Remember to add ftp line to rc.conf.local
# ftpproxy_flags="-T "ftproxied" -t 14400 -v"
#########################################
nat-anchor "ftp-proxy/*"
rdr-anchor "ftp-proxy/*"
rdr on $wan_ifs proto tcp from <internet> to ftp_servers port 21 -> 127.0.0.1 port 8021 rdr on $lan_if proto tcp from <lan_hosts> to any port 21 -> 127.0.0.1 port 8021



##########################################################
#
# FILTER RULES
#
############################################################

######################################################
# default rule.. block everything
######################################################
block log label catchall
#antispoof for self
block in quick from urpf-failed

#############################################################
# Block these quick, we know they are bad
##############################################################
$bilqo $wan_ifs from <ftpbreakins>
$bilqo $wan_ifs from <sshbruteforce>

# We don't do ipV6
block quick inet6

#############################################################
# Block people port scanning us
############################################################
$bilqo $wan_carp_ifs from <internet> os nmap
$bilqo $wan_ifs from <internet> os nmap

#############################################################
# Block ident but send reset so connection can procoeed
############################################################
block return in on $wan_ifs proto tcp $fata port auth
block return in on $lan_if proto tcp from <lan_hosts> port auth

########################################
# Make sure to let carp and pfsync through
########################################
$piqo $carp_ifs proto carp
$piqo $pfsync_if proto pfsync


############################################################
# catch bad guys doing ssh brute force to port 22
# The addresses caught are cleared every 3 days
# if counters for the ip aren't cleared.  The job
# that removed addreses is.
# 1 * */3 * * /sbin/pfctl -t sshbruteforce -T expire 259200
############################################################
pass in on fxp0 proto tcp from any to any port { ssh telnet }keep state (max-src-conn 1, max-src-conn-rate 1/60, overload <sshbruteforce> flush global)

######################################################
# block bogons in and out of the ext interfaces.
######################################################
$bolo $wan_ifs from <bogons> label bogons_out
$bilqo $wan_ifs from <bogons> label bogons_in

######################################################
# block and log ports that shouldn't be coming
# into our network from the internet
# but not quick in case we want to let them in specifically later.
######################################################
$bilo $wan_ifs proto tcp $fata port $specialports_tcp label "specialports TCP" $bilo $wan_ifs proto udp $fata port $specialports_udp label "specialports UDP"

######################################################
# Self out and already filtered connections out
#####################################################
$poo $wan_ifs proto tcp from { <lan_hosts> <dmz_hosts> } to <internet> $ms
$poo $wan_ifs proto { udp icmp } from { <lan_hosts> <dmz_hosts> } to <internet>
$poo $dmz_if from { <internet> <lan_hosts> } to <dmz_hosts>

# already filtered, but paranoid
$poo $lan_if proto tcp from ovpn to <lan_hosts> port $vpn_lan

#############################################################
# Redirected traffic from internet to lan **BAD BAD BAD****
############################################################
$poo $lan_if proto tcp from <internet> to { bec_inside tal_inside } port www tagged BEC-TAL $poo $lan_if proto tcp from <internet> to tal_inside port 4444 $ms tagged TAL

# Allow the ftp proxied traffic out on lo to ftp servers
pass out quick on $dmz_if proto tcp from lo0 to $ftp_servers tagged ftproxied

# Allow firewall to troubleshoot network
$poo self proto icmp from $carp_ifs to any $icmpt


#############################################################################
# Into the firewall
############################################################################
# Other's can ping us, but not too fast
# had to add the inet lines because got errors w/o it.
# pf.sanitized:332: proto icmp doesn't match address family inet6
# pf.sanitized:332: skipping rule due to errors
# pf.sanitized:332: proto icmp doesn't match address family inet6
# pf.sanitized:332: skipping rule due to errors

$pio $wan_carp_ifs inet proto icmp from <internet> to $wan_carp_ips $icmpt keep state \ (max-src-nodes 30, max-src-states 10, max-src-conn-rate 2/1, overload <badguys> flush global)

# Let the dmz ping us as well
$pio $dmz_carp_if inet proto icmp from <dmz_hosts> to $dmz_carp_ip $icmpt keep state \ (max-src-nodes 30, max-src-states 10, max-src-conn-rate 2/1, overload <dmz_badguys> flush global)

# Yup, the lan can ping us too
$pio $lan_carp_if inet proto icmp from <lan_hosts> to $lan_carp_ip $icmpt


########################################
# Let the lan roam
########################################

# The lan can get email from the dmz
$pio $lan_if proto tcp from <lan_hosts> to gargoyle port { imap imaps } $ms
# The lan can send mail to the dmz
$pio $lan_if proto tcp from <lan_hosts> to $smtp_servers port smtp $ms
# The lan can check tbcn web pages
$pio $lan_if proto tcp from <lan_hosts> to $web_servers port { www https } $ms
# The lan can telnetand ssh to topform but they should really ssh there
$pio $lan_if proto tcp from <lan_hosts> to topform port { telnet ssh } $ms
# The lan can ftp into the dmz
$pio $lan_if proto tcp from <lan_hosts> to lo0 port 8081 $ms
# don't forget to add the lo0 out dmz tagged ftproxied for

# The lan can go to webmin on the dmz
$pio $lan_if proto tcp from <lan_hosts> to <dmz_hosts> port 10000 $ms

# The lan can go anywhere on the internet
$pio $lan_if proto tcp from <lan_hosts> to <internet> port $lan_out_tcp $ms
$pio $lan_if proto udp from <lan_hosts> to <internet> port $lan_out_udp
$pio $lan_if inet proto icmp from <lan_hosts> to <internet> $icmpt
#$piqo $lan_if proto tcp from $freehosts to any $ms
#$piqo $lan_if proto { udp icmp } from $freehosts to any


##########################################
#
# Dmz needs to breath too
#
##########################################

# let dmz get their own dns and time syncs
$pio $dmz_if proto tcp from <dmz_hosts> to $ext_dns_servers port domain $ms
$pio $dmz_if proto udp from <dmz_hosts> to $ext_dns_servers port domain
$pio $dmz_if proto tcp from <dmz_hosts> to $ext_time_servers port ntp $ms
$pio $dmz_if proto udp from <dmz_hosts> to $ext_time_servers port ntp

# gargoyle mail out
$pio $dmz_if proto tcp from $lan_smtp_servers to <internet> port smtp $ms
# gargoyle getting blacklist updates
$pio $dmz_if proto tcp from $smtp_servers to www.sa-blacklist.stearns.org port rsync $ms
# gargoyle getting clamav updates
$pio $dmz_if proto tcp from $smtp_servers to db.us.clamav.net port www $ms
# gargoyle getting weather data for webmail
$pio $dmz_if proto tcp from $smtp_servers to www.weather.com port www $ms

# DMZ machine updates
$pio $dmz_if proto tcp from <dmz_hosts> to mirror.centos.org port www

# VPN machine to lan
$pio $dmz_if proto tcp from ovpn to <dmz_hosts> port $vpn_lan

# Troubleshooting connectivity, ping helps.
$pio $dmz_if inet proto icmp from <dmz_hosts> to <internet> $icmpt keep state \ (max-src-nodes 30, max-src-states 10, max-src-conn-rate 2/1, overload <dmz_badguys> flush)

########################################
#
# Let outside people use us
#
########################################

######################################################
# Ftp Servers
#####################################################
anchor "ftp-proxy/*"
$pio $wan_ifs proto tcp from <internet> to lo0 port 8081 $ms

#FTPS for express
$pio $wan_ifs proto tcp from <internet> to tbcnexpress port ssh $ms
$pio $wan_ifs proto tcp from <internet> to tbcnexpress port 8000:8010 $ms



#######################################################
# WEB SERVERS
########################################################
$pio $wan_ifs proto tcp to $web_servers port { www https } $ms

########################################################
# mail coming but not from win95 and 98
########################################################
$pio $wan_ifs proto tcp $fat $smtp_servers port smtp $ms \
(max-src-conn 50, max-src-conn-rate 50/5, overload <badguys> flush)

# figure out how/what OS to put here to block non-Server MS
# boxes from sending email to us.  will hopefully block a lot of spam
# if i use the "Windows" from pfctl -os will it block ALL versions of windozzzze?
$bilqo $wan_ifs proto tcp from <internet> $smtp_servers port smtp os \
{  "Windows 95" "Windows 95 b" "Windows 95 winsock2" "Windows 98" \
"Windows 98 lowTTL" "Windows 98 noSack" "Windows 98 RFC1323" \
"Windows CE" "Windows CE 2.0" "Windows ME" "Windows XP" \
"Windows XP cisco" "Windows XP RFC1323" "Windows XP SP1" \
"Windows XP SP3" }

#######################################################
# WEB SERVERS
########################################################
$pio $wan_ifs proto tcp to $web_servers port { www https } $ms

###########################################################
# SSH into dmz
###########################################################

# Allow ori and myself to dmz hosts via ssh
$pio $wan_ifs proto tcp from { $ori_ips $noc_ips } to <dmz_hosts> port { $tbcn_ssh ssh }$ms

# Allow ssh to topform from topform guys
#$pio $wan_ifs proto tcp from <ip of top guys> to topform port topform_ssh $ms


##########################################################
# VPN from everywhere
##########################################################

# SGB - TB ptp vpn
$pio $wan_ifs proto udp from ovpnsgb port 1194 to ovpn port 1194

# Road Warrior and me vpn.
$pio $wan_ifs proto udp from <internet> to ovpn port { 1195 1196 }


##########################################################
# DNS service
#########################################################
$pio $wan_ifs proto tcp from <internet> to $dns_servers port domain $ms
$pio $wan_ifs proto udp from <internet> to $dns_servers port domain


########################################################
#
# Redirects from outside to lan servers
# *** STILL *** a VERY bad idea
# These are older IIS machines, and i thought about synproxying
# state, but even though i'm trying to protect the network
# I would hate to compromise the firewall to do it.
#######################################################
$pilo $wan_ifs proto tcp from <internet> to { bec_inside tal_inside } port www $ms tag BEC-TAL
$pilo $wan_ifs proto tcp from <internet> to tal_inside port 4444 $ms tag TAL

-------------------------------------------------------
END OF PF.CONF

I do have one routing situation that I didn't put into this rule set yet, I wanted to see if I had set up a sane rule set before dealing w/the routing. I have 2 isps and on my dmz interface i have one real address and an alias. I need to make sure that reply traffic coming into my dmz gets routed out the ISP it came in on. I have planned on handling that with the following:

   R1 -------                  R1 - Router 1    R2 - Router 2
              \                 S - Server       PF - Firewall
              PF ------- S
              /
   R2 -------

Let's say incoming request to S comes from either R1 or R2 and must use
the same return path.

Here is what I would do (dug up from my memory), with OpenBSD 4.2 (which
doesn't require flags and keep state) :

% pass in on $r1_if proto tcp to $s port http tag "okR1"
% pass in on $r2_if proto tcp to $s port http tag "okR2"
% pass out on $s_if reply-to ($r1_if $r1_ip) all tagged "okR1"
% pass out on $s_if reply-to ($r2_if $r2_ip) all tagged "okR2"

(snagged from the archives, thanks Jeremie)

Thanks again to anyone who took the time to have a look.

Aaron

OpenBSD 4.2 (GENERIC) #375: Tue Aug 28 10:38:44 MDT 2007
   [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel(R) Celeron(R) CPU 2.00GHz ("GenuineIntel" 686-class) 2 GHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,CNXT-ID
real mem  = 536440832 (511MB)
avail mem = 511070208 (487MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 07/22/03, BIOS32 rev. 0 @ 0xfb160, SMBIOS rev. 2.3 @ 0xf0800 (38 entries) bios0: vendor Award Software International, Inc. version "6.00 PG" date 07/22/2003
bios0: Supermicro P4SDA
apm0 at bios0: Power Management spec V1.2
apm0: AC on, battery charge unknown
apm0: flags 70102 dobusy 1 doidle 1
pcibios0 at bios0: rev 2.1 @ 0xf0000/0xdf84
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdec0/192 (10 entries)
pcibios0: PCI Exclusive IRQs: 3 5 7 9 10 11
pcibios0: PCI Interrupt Router at 000:31:0 ("Intel 82371SB ISA" rev 0x00)
pcibios0: PCI bus #2 is the last bus
bios0: ROM list: 0xc0000/0x10000 0xd0000/0x1800 0xd2000/0x1800 0xd4000/0x1800
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82845 Host" rev 0x04
ppb0 at pci0 dev 1 function 0 "Intel 82845 AGP" rev 0x04
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "SiS 300/305/630 VGA" rev 0x90: aperture at 0xe0000000, size 0x400000
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
ppb1 at pci0 dev 30 function 0 "Intel 82801BA AGP" rev 0x05
pci2 at ppb1 bus 2
san0 at pci2 dev 0 function 0 "Sangoma A10x" rev 0x00 irq 9
fxp0 at pci2 dev 1 function 0 "Intel 8255x" rev 0x10, i82551: irq 3, address 00:0e:0c:74:6d:61
inphy0 at fxp0 phy 1: i82555 10/100 PHY, rev. 4
fxp1 at pci2 dev 2 function 0 "Intel 8255x" rev 0x10, i82551: irq 7, address 00:0e:0c:3b:3f:2e
inphy1 at fxp1 phy 1: i82555 10/100 PHY, rev. 4
fxp2 at pci2 dev 3 function 0 "Intel 8255x" rev 0x10, i82551: irq 5, address 00:0e:0c:74:6d:a2
inphy2 at fxp2 phy 1: i82555 10/100 PHY, rev. 4
fxp3 at pci2 dev 4 function 0 "Intel 8255x" rev 0x08, i82559: irq 10, address 00:03:47:b1:2c:c4
inphy3 at fxp3 phy 1: i82555 10/100 PHY, rev. 4
rl0 at pci2 dev 5 function 0 "Realtek 8139" rev 0x10: irq 11, address 00:50:bf:72:51:c9
rlphy0 at rl0 phy 0: RTL internal PHY
ichpcib0 at pci0 dev 31 function 0 "Intel 82801BA LPC" rev 0x05: 24-bit timer at 3579545Hz pciide0 at pci0 dev 31 function 1 "Intel 82801BA IDE" rev 0x05: DMA, channel 0 wired to compatibility, channel 1 wired to compatibility
wd0 at pciide0 channel 0 drive 0: <ACCUSYS ACS75130 1.4>
wd0: 16-sector PIO, LBA48, 38166MB, 78165360 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <SAMSUNG, CD-ROM SH-152A, C504> SCSI0 5/cdrom removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
uhci0 at pci0 dev 31 function 2 "Intel 82801BA USB" rev 0x05: irq 7
ichiic0 at pci0 dev 31 function 3 "Intel 82801BA SMBus" rev 0x05: irq 9
iic0 at ichiic0
uhci1 at pci0 dev 31 function 4 "Intel 82801BA USB" rev 0x05: irq 11
isa0 at ichpcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
lm0 at isa0 port 0x290/8: W83627HF
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
usb0 at uhci0: USB revision 1.0
uhub0 at usb0: Intel UHCI root hub, rev 1.00/1.00, addr 1
usb1 at uhci1: USB revision 1.0
uhub1 at usb1: Intel UHCI root hub, rev 1.00/1.00, addr 1
biomask ebc5 netmask efed ttymask ffef
pctr: user-level cycle counter enabled
mtrr: Pentium Pro MTRR support
dkcsum: wd0 matches BIOS drive 0x80
root on wd0a swap on wd0b dump on wd0b
carp: carp1 demoted group carp to 129

Reply via email to