NAT an IP address to an internal host (public IP is not assigned to any ASA interface) - internal host is a web server

Hi I was told by engineer that ASA can do this due to proxy arp. I need to nat a public IP (this public IP is ours - routes into our DMZ, The IP I wish to use is not assigned on  any active interface however)

My understanding of nat on the asa is basic - just nat (inside) (outside) interfaces etc then port eg 80

How do i achieve this without (inside) (outside) (dmz) which are interfaces. Do I just create an object and nat that  ? The IP is in the DMZ range so do I nat to  that the DMZ interface on the ASA- even though IP address is not assigned to an any server IN DMZ or asa interface. ? If so can someone provide a nat command example to follow please?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

philb19Author Commented:
I cant use outside interface of asa as already nat this to another port 80 internal webserver

also i have many other port 80 services on a few dmz revproxy + webservers in dmz - i dont want to screw them up. - thanks
--> I cant use outside interface of asa as already nat this to another port 80 internal webserver

You don't NAT interfaces you NAT IP addresses.  As long as you have available public IP addresses you can add another NAT.

What version of ASA firmware are you running?

Link showing different ways to do NAT based on version of ASA.
philb19Author Commented:
Thanks ver 9.0 (2) of ASA. - yes i realize nat IP. - (outside) - is outside public IP

So you are saying I create a new  named object - give it the public IP address I want to nat.

Then nat like this

(inside) to ("new named object") source static "internal web server name " service tcp www

If I just use (outside) again - will it not override the nat/redirect i already have for another web server ?
Your Guide to Achieving IT Business Success

The IT Service Excellence Tool Kit has best practices to keep your clients happy and business booming. Inside, you’ll find everything you need to increase client satisfaction and retention, become more competitive, and increase your overall success.

Can you post your current NAT statement?

You can create objects for both but you don't need to.  Simple example:

object network inside-webserver
nat (inside,outside) static service tcp 80 80

This will clreate a network object called inside-webserver whois IP address i  

It will NAT 19.2168.1.100 to for tcp traffic flowing between the inside and outside interfaces.  All other traffic should be blocked.  If you need https then would have the additonal config:

object network inside-webserver-ssl
nat (inside,outside) static service tcp 443 443

Another link with some simple samples.

You could define as a resource object like:

object network outside-webserver

and use outside-webserver instead of specifying  The only advantage of this, is if you changed your outside IP address you just change it in the object definition instead of each of the NAT statements.
philb19Author Commented:
The (outside) - single public IP address is already nat'd to another internal web server.

I have another public IP -dmz range(not on any interface) that I want to nat to another internal web server
Are you saying you have two public IP address subnets?

If so, how does the Internet know to route the second subnet to your oustide ASA interface?

Even with that, you should still be able to use NAT statement.  If the real host is on an interface called dmz, then you just say "(dmz,outside)", or if you want to use the public IP address from your internal newtork, you would say "(dmz,any)".
philb19Author Commented:
Hi - We have an outside interface (small range - I think 2 or 3 IPs) - 1 IP on outside interface

We have a 14 IP DMZ range. - The IP I want to use is in this 14 IP range. Only its not assigned to any server in the DMZ or on the asa dmz interface.

"Are you saying you have two public IP address subnets? - yes

If so, how does the Internet know to route the second subnet to your oustide ASA interface?

internet routes to us - for DMZ range as well as outside range - does this make sense?

- Sorry no expert on nat. - So Im ok to create an object for "DMZ public IP" - then nat statement

(inside) to ("new named object") source static "internal web server name " service tcp www   - would this work?
O.K., just wanted to make sure I understood your setup.   I'll have to think about this.  We no longer use PIX/ASA and when we did the outside interface was on the same subnet as our public addresses.

The simplest way to do this would be to use 3 interfaces on the ASA:

Outside <---> ASA <---> Inside

Then use your "DMZ" IP address without NAT's in the DMZ.  But let me think about this and check a few things out.
philb19Author Commented:
ok thanks. FYI - I have 2 to 3 TMG/ISA servers in DMZ servers already doing web publishing/http forwarding to internal (webmail as eg) - Only I dont want to use this setup again. -  I want to use asa firewall/nat (as I have done on the "outside" interface) of ASA  already.
Reading up and looking at few posts it seems that as long as your ISP is routing your /28 to the IP address of your outside interface you should be able to do:

object network outside-webserver1

object network inside-webserver1
nat (inside,outside) static outside-webserver1 service tcp 80 80

Even though your outside interface is not on that subnet,  you want to use (inside,outside) because those are the interfaces you want the NAT translation to occur on.

A search string you can use is:

ASA NAT non-connected network

Some links:

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
philb19Author Commented:
Thanks very helpful - If I specify   nat (inside,outside) static outside-webserver1 service tcp 80 80

how then does the nat get translated to the correct "inside" webserver IP ?
philb19Author Commented:
Sorry i think I see - the nat is applied on the "inside-web server1" object

So its nating what hits the  "outside-web server" IP on the outside interface of the ASA  to the inside web server1 object
Henk van AchterbergSr. Technical ConsultantCommented:
object network WAN_externalip
 object network LAN-internalip

object service TCP-80_HTTP
 service tcp destination eq www
nat (outside,inside) source static any any destination static WAN_externalip LAN-internalip service TCP-80_HTTP TCP-80_HTTP unidirectional

this is all you need for proxy arp running firmware version 9.
philb19Author Commented:
Worked perfectly - thanks very much - also needs ACE outside interface in to inside webserver http

thanks to others who posted
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.