0

PushToTest does performance testing for Social/Mobile Web apps. For example, We used 20 AWS EC2 c1.medium instances to generate 50,000 user transactions in a 10 minute period.

Our TestMaker software is Java and runs on EC2/Centos, Windows, Linux, Unix to operate virtual users. Each virtual user operates a headless browser. The browser operates a test use case to operate the app.

Our customer's site are often served from the Akamai Edge Cache. The user's browser makes a DNS query for the IP address and Akamai dynamically finds the Edge Cache (called a Region) that is closest to the user. The Edge Cache serves the HTML of the site and the media (jpg, png, Flash, etc.) from the region.

Our test solution needs to do the DNS query as a set of source IP addresses. Each EC2 instance needs to be from a unique IP address that the test environment sets. It is a range of IP addresses from various locations around North America. PushToTest provides the IP addresses.

We need a way to tell the Centos instance the source IP address when it makes the DNS query.

How can we do this in EC2?

-Frank

  • 2
    It's not clear what you're trying to accomplish, or how changing the source address on a DNS query would help. As Srdjan pointed out correctly in his answer the DNS response would go back to the spoofed IP address and would be discarded since there wouldn't be a pending request at that host. If you're trying to get DNS resolution for different edge cache regions, you should be talking directly to Akamai tech support for potential solutions. Spoofing DNS source IPs isn't ever going to work. – Jim Garrison Aug 31 '12 at 03:42

2 Answers2

2

You can't do this. You can set the source IP by going lower on the TCP/IP stack but the result will not be routed back to you. It will be routed to the IP that was switched in instead thus would suggest possibly using proxies to help you out.

Srdjan Grubor
  • 2,605
  • 15
  • 17
0

Thanks for the responses.

We solved this by running the test from multiple AWS machine instances. We did a google search for DNS service United States, screen scraped the results, to build a list of 100 DNS services in the US. We saved the list to a comma separated value (cdv) file.

We ran a test using PushToTest TestMaker in 100 AWS machine instances - TestMaker started the instances automatically. The test uses TestMaker's Unique Data Production Library (UniqueDPL) service to uniquely set each machine instance's DNS client to use a DNS server from the csv file.

Akamai does DNS location magic to figure out the region closest to the DNS service. I wish Akamai would offer a REST API to identify a header for the many regions they host.

-Frank