[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems getting from the pf firewall host to anything on thenet through nat



put logging on your block rules and watch tcpdump...that'll help ya ;)

Brent Bolin wrote:
Trying to configure pf to use round-robin outbound.  Currently setup with
two T1 gateways.

Works fine from the internel network, but I get this from the firewall -

Trying 2001:4f8:0:2::e...
ftp: connect to address 2001:4f8:0:2::e: No route to host
Trying 204.152.184.73...
ftp: connect to address 204.152.184.73: No route to host
Trying 62.243.72.50...
ftp: connect: No route to host

Same thing for ssh

# ssh chinet.com
ssh: connect to host chinet.com port 22: No route to host


Have some pretty basic rules just for testing, what am I missing ?



lan_net = "192.168.111.0/24" loopback = "127.0.0.1/32" lo0 = "lo0" int_if = "xl0" ext_if1 = "rl0" ext_if2 = "rl1" ext_gw1 = "67.39.169.193" ext_gw2 = "68.79.110.97"

#  nat outgoing connections on each internet interface
nat on $ext_if1 from $lan_net to any -> ($ext_if1)
nat on $ext_if2 from $lan_net to any -> ($ext_if2)

#  default deny
block in  from any to any
block out from any to any

#  pass all outgoing packets on internal interface
pass out log on $int_if from any to $lan_net
#  pass in quick any packets destined for the gateway itself
pass in quick on $int_if from $lan_net to $int_if


# load balance outgoing tcp traffic from internal network. pass in log on $int_if route-to \ { ($ext_if1 $ext_gw1), ($ext_if2 $ext_gw2) } round-robin \ proto tcp from $lan_net to any flags S/SA modulate state


# load balance outgoing udp and icmp traffic from internal network pass in log on $int_if route-to \ { ($ext_if1 $ext_gw1), ($ext_if2 $ext_gw2) } round-robin \ proto { udp, icmp } from $lan_net to any keep state


# general "pass out" rules for external interfaces pass out log on $ext_if1 proto tcp from any to any flags S/SA modulate state pass out log on $ext_if1 proto { udp, icmp } from any to any keep state pass out log on $ext_if2 proto tcp from any to any flags S/SA modulate state pass out log on $ext_if2 proto { udp, icmp } from any to any keep state

#  route packets from any IPs on $ext_if1 to $ext_gw1 and the same for
#  $ext_if2 and $ext_gw2
pass out log on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to any
pass out log on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to any


-- Drain Fade '01 VFR800 Bothell, WA http://drainfade.com