Link to home
Start Free TrialLog in
Avatar of treloskostas

asked on

Cisco PIX 501 behind ADSL router problem

Hello everybody,

I'm having a real trouble configuring my cisco pix 501 firewall and since I am a huge fan of this very useful website I would like to ask the real  experts if they could help me on this. I am trying to setup a PIX 501 behind a US.Robotics ADSL modem/router as follows:
      | 221.123.xx.xx (static IP) |
| ADSL Router |
     | ()
     | (outside interface of PIX)
| PIX 501 |
     | (inside interface of PIX)
     |                        Internal network (

The reason for using the PIX is that I want to setup a client-to-site VPN tunnel so every remote client can access my internal network from the internet using a cisco vpn client software.

The ADSL router is configured to port forward ports 500, 4500 and 10000 to

I am very new to all this VPN thing so I don't know if I am doing the right usage of PIX or not... (Any other suggestions and configurations are more than welcome).

The real truth is that I have managed to get it somehow working with the following configuration but I am really facing a very unusual behavior that I will describe after reading my configuration file...


interface ethernet0 auto
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
enable password xxxxxxxxxxxxxxxx encrypted
passwd xxxxxxxxxxxxxxxxx encrypted
hostname pix
clock timezone EEST 1
clock summer-time EEDT recurring last Sun Mar 3:00 last Sun Oct 4:00
fixup protocol dns maximum-length 512
fixup protocol ftp 21
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol http 80
fixup protocol rsh 514
fixup protocol rtsp 554
fixup protocol sip 5060
fixup protocol sip udp 5060
fixup protocol skinny 2000
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol tftp 69
name server1
access-list VPN_splitTunnelAcl permit ip host server1 any
access-list inside_outbound_nat0_acl permit ip host server1
access-list outside_cryptomap_dyn_20 permit ip any
access-list outside_access_in permit ip any host server1
pager lines 24
logging on
logging host inside
mtu outside 1500
mtu inside 1500
ip address outside
ip address inside
ip audit info action alarm
ip audit attack action alarm
ip local pool Vpn_Client_IPs
pdm location inside
pdm location inside
pdm location inside
pdm location server1 inside
pdm location outside
pdm logging informational 512
pdm history enable
arp timeout 14400
global (outside) 1 interface
nat (inside) 0 access-list inside_outbound_nat0_acl
static (inside,outside) server1 server1 netmask 0 0
access-group outside_access_in in interface outside
route outside 1
timeout xlate 0:05:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
timeout h323 0:05:00 mgcp 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute
aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius
aaa-server LOCAL protocol local
aaa-server MyLocal_Radius protocol radius
aaa-server MyLocal_Radius (inside) host xxxxxxxxxx timeout 5
http server enable
http inside
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
floodguard enable
sysopt connection permit-ipsec
crypto ipsec transform-set ESP-3DES-MD5 esp-3des esp-md5-hmac
crypto dynamic-map outside_dyn_map 20 match address outside_cryptomap_dyn_20
crypto dynamic-map outside_dyn_map 20 set transform-set ESP-3DES-MD5
crypto map outside_map 65535 ipsec-isakmp dynamic outside_dyn_map
crypto map outside_map client authentication MyLocal_Radius
crypto map outside_map interface outside
isakmp enable outside
isakmp identity address
isakmp policy 20 authentication pre-share
isakmp policy 20 encryption 3des
isakmp policy 20 hash md5
isakmp policy 20 group 2
isakmp policy 20 lifetime 86400
vpngroup VPNGROUP address-pool Vpn_Client_IPs
vpngroup VPNGROUP dns-server nis
vpngroup VPNGROUP wins-server
vpngroup VPNGROUP default-domain
vpngroup VPNGROUP split-tunnel VPN_splitTunnelAcl
vpngroup VPNGROUP idle-time 1800
vpngroup VPNGROUP password ********
telnet inside
telnet timeout 5
ssh inside
ssh timeout 5
console timeout 0
terminal width 80


Now the part that I mentioned before...

When I use a cisco vpn client version 4.7 to create a vpn connection with my remote network I have this strange behavior....... I am successfully authenticated from MyLocal RADIUS server that has an internal IP ( and then I successfully get an internal IP address with subnet mask from the IP POOL that I configured above.....
When I try to ping "server1" (with IP  I don't get any replies!!!!!...... I used a network sniffer to see if there is a problem on the PC running the CISCO VPN client but all of the icmp packets are sent successfully to the internal IP address (server1) but without getting any replies from it.......
---> IF I  TRY TO  SEND AN ECHO REQUEST packet (ping) from (server1 that is in my internal network) to the I suddenly get an ECHO REPLY packet from it !!!!!!

As if a miracle happened from that moment and on I can ping both ways the two machines...  <----> and>

Unfortunately if I disconnect and then reconnect, the same thing happens again untill I send a ping request from my internal IP address to

Can anyone explain to me why this is happening and how I can solve this problem? I have never seen something like that and I cannot troubleshoot this.... If this helps a bit, the "server1" is a plain linux workstation with no firewall running and the PC that I am trying to connect with the cisco vpn client runs on a Windows XP pro SP2 with no firewall enabled.

Thank you very much in advance.

Avatar of freymish
Flag of United States of America image

access-list inside_outbound_nat0_acl permit ip host server1
ip address inside
pdm location inside

Notice there are three different subnet masks being associated with the network.

I am thinking you need to settle on one for all items and see if that clears up your issues.

I believe you should go a step further and use a different network address range altogether for you VPN pool.  Something like this (feel free to pick your own private class addressing for the pool):

no ip local pool Vpn_Client_IPs
no access-list inside_outbound_nat0_acl permit ip host server1
no access-list outside_cryptomap_dyn_20 permit ip any
ip local pool Vpn_Client_IPs            <==uses entire network
access-list inside_outbound_nat0_acl permit ip host server1
access-list outside_cryptomap_dyn_20 permit ip any

As long as your inside Linux server has the PIX inside interface IP address their default gateways, this should work.
I wanted to explain why I suggested that you re-address your VPN client pool.

This is generally considered a best practice since:

1.  There is no room for any subnetting issues (as long as you don't choose an overlapping network)  .  As long as traffic destined for the VPN clients makes it to the PIX (whether via internal routes or because you have a flat network behind the PIX and it is set as everyone's default gateway), then the traffic will make it back to the VPN client.
2.  In troubleshooting situations, you will immediately recognize these addresses as your VPN client pool and thus make the troubleshooting process easier.

Good luck...
Avatar of treloskostas


Thank you for the replies but I don't know if these are going to help me a lot. As for re-addressing my VPN client pool can you explain me how am I going to access my private 10.x.x.x network if my vpn clients have a CLASS B IP addresses? Is this possible??? I must say that  I cannot change all my internal network IP addresses. If I understood something wrong please let me know....

Do you think that I could use the PIX somehow else and avoid totally the ADSL router? Is this possible or this is a silly idea? I was thinking If PIX could be used in front of my internal gateway so my internal clients can access the internet with no problem and the external vpn clients can easily connect to my network without a problem....

    |   (My static IP address on the outside interface)
|   PIX 501  |
    |  ( on the inside interface)
    |  (10.170.200.xx on my existing internet gateway)
| gateway  |   (already exists and runs other services like RADIUS etc. so it will be difficult to get rid of it)
    |  (10.170.200.xx on the other interface of my existing gateway)
    |              Internal Network 10.170.200.xx

Thank you...
Avatar of Les Moore
You also have to enable NAT traversal on the PIX
  isakmp nat-traversal 20

>Do you think that I could use the PIX somehow else and avoid totally the ADSL router?
No, but  you might be able to put the router into bridge mode so that the PIX actually gets the public IP address.

Thank you for the reply. I will try that with the nat-traversal and I will let you know...  I am not though very sure if my adsl modem/router can be used in bridge mode but I will read the user manual to verify that. If this can be done do you know how I can configure the PIX to get my public IP address? I really don't know how to do it and as I have said before I new to all this story...

thank you
Avatar of freymish
Flag of United States of America image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial