Configuring a Dual-WAN Router for improved Terminal Services (RDP) performance

I have two servers, one a file server running Windows Server 2000 and the other is a terminal server running Windows Server 2003.  Most of my remote terminal services uses complain about the performance, particularly during the day when my office is full and has many people accessing the internet at the same time.

To try to improve the situation, I added a second WAN connection and purchased a FortiGate-50B dual wan firewall router.  The way I wanted it setup was to use my WAN1 (Bell DSL with static IP) solely for the port 3389 on the terminal server, and then use WAN2 (Rogers Cable) for all other internet usage (web browsing/e-mail/etc.).  The company that installed this had it setup this way at first, but the problem came up that I could no longer access Bell's SMTP server because it needs to go through the Bell ISP (it won't let you access their SMTP from another ISP, in my case Roger's).  They tried to fix this, but in the end they've setup load balancing with means that although I can access the SMTP, my Bell connection is being used for more that terminal services, and as a result the remote user's performance isn't much improved.

Does anyone know how I can setup my FortiGate-50B so that:

All 3389 traffic uses WAN1 (Bell)
All 25 traffic (SMTP) uses WAN1 (Bell)
All other traffic (web browsing, port 587 SMTP, incoming mail, etc.) uses WAN2 (Rogers)

Thanks in advance!
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.


The feature that you are looking to configure on the Fortinet is known as policy routing.  You can find the configuration under the following.

Router -> Static -> Policy Route Tab

Policy Routing controls which interface handles outbound traffic.  The Fortinet is not a load balancing device as the device does not make decsions on where to send the traffic based on use, but rather it is a load sharing device in which it must be told where to send traffic.

The Policy Route that you want to create would look similar to the following.

Protocol: 6 (Alway Use Protocol 6 for TCP/UDP Traffic)
Incoming Interface: Your LAN Interface
Source address / mask (For All Addresses)
Destination address / mask (For All Addresses)
Destination Ports From:  3389  To:  3389 (RDP Ports or Any other protocol)
Force traffic to:  
Outgoing interface WAN1 (Bell)
Gateway Address (Default Route)

Repeat the same configuration for port 25 SMTP for the WAN1 Interface.  You can then repeat for the other protocols over your WAN2 interface.

Here's a good article from the Fortinet Knowledge Center on using Policy Routing.

Since you have 2 WAN connections you probably want to configure you WAN links to faily over to each other in the event one link is lost.

Checkout the following article on using different default route metrics for which kind of failover you would like to perform.

In this scenario make sure to have the appropriate firewall rules that point from your internal interface to each individual WAN link.

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
jamiejolliffeAuthor Commented:
Thanks for the info,

I had already setup that SMTP policy, with the exception of specifiying Protocol 6 (I had left the default Protocol 0, which would force SMTP through WAN1, but it would also force all other traffice (HTTP 80, etc.) through WAN1.  Changing to Protocol 6 seems to have done what I want by only forcing SMTP through WAN1 while still sending the other traffice through WAN2.

To date, I have been using a "Virtual IP" to map all 3389 traffice to the internal IP of my terminal server.  Is there any reason for me to setup the policy you mentioned above for port 3389 as well (keep in mind that obviously all 3389 communication would be external access, no internal 3389 connections would exist)?
Policy Routes are only used for traffic that is heading outbound to another interface on the device.  Virutal IP's are used to map inbound services from interface to another, of which in your case you are correctly using.  The only other recommendation I would have would be to configure failover routing using static routes, and then configure the same firewall rule you have currently to your other WAN connection.   This will make sure in the event of an outage on your WAN interface that is servicing the TS sessions that you can still gain access through your second WAN interface.
jamiejolliffeAuthor Commented:
Thanks, I will set that up.  The only issue there is that my second WAN does not have static IP, so I will need to setup dynamic DNS for it to be a viable backup connection for my remote users.
jamiejolliffeAuthor Commented:
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.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.