<div dir="ltr">Great point.  We don't need geo-diversity for websites with the IP address issue, so we could design for that case specially on a one-off basis.<div><br></div><div>For throughput it shouldn't be an issue where we're located, but we often find websites serving different content based on the source IP of the traffic.  So, having a presence closer to the user is useful.  But then again, this is a different concern that's orthogonal to the original question, because geo-ip doesn't make much sense with an anycast IP.  For those websites that need a stable IP for NACLs *and* serve different content based on source IP, we have to use the predictable 3-5 IPs per site suggestion of yours.</div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Jul 28, 2021 at 11:27 AM Glenn McGurrin via NANOG <<a href="mailto:nanog@nanog.org">nanog@nanog.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I'd had a similar thought/question, though keeping the geo diversity, <br>
you manage the crawlers, and are making contact individually with these <br>
sites from what you have stated (and so don't need a one size fit's all <br>
list for public posting), so why not have a restricted subset of the <br>
crawlers handle sites with these issues (which subset may be unique per <br>
site, which makes maintaining even load balancing not overly complex <br>
/limiting, especially as you are using nat anyway, so multiple servers <br>
can be behind each ip and that number can vary).  That let's you have <br>
geo diversity (or even multi cloud diversity) for every site, but each <br>
site that needs this IP whitelisting only needs 3-5 IP's at any site, <br>
but yet you can distribute load over a much larger overall set of <br>
machines and nat gateways.<br>
<br>
As I understand it even CDN's that anycast TCP (externally or internally <br>
[load balancing via routers and multi path]) do similar by spreading <br>
load over multiple IP's at the DNS layer first.<br>
<br>
As the transition to IPv6 happens you may have it easier as getting a <br>
large enough allocation to allow for splitting it out into multiple <br>
subnets advertised from different locations without providers dropping <br>
the route as too long a prefix is much easier on the v6 side, so you <br>
could give one /36 or /40 or even /44 out to whitelist but have /48's at <br>
each location.  For sites with ipv6 support that may help now, but it <br>
won't help all sites for quite some time, though the number that support <br>
v6 is slowly getting better.  For the foreseeable future you still need <br>
to handle the v4 side one way or another though.<br>
<br>
On 7/28/2021 10:21 AM, William Herrin wrote:<br>
> On Wed, Jul 28, 2021 at 6:04 AM Vimal <<a href="mailto:j.vimal@gmail.com" target="_blank">j.vimal@gmail.com</a>> wrote:<br>
>> My intention is to run a web-crawling service on a public cloud. This service<br>
>> is geographically distributed, and therefore will run in multiple regions<br>
>> around the world inside AWS... this means there will be multiple AWS VPCs,<br>
>> each with their own NAT gateway, and traffic destined to websites<br>
>> that we crawl will appear to come from this NAT gateway's IP address.<br>
> <br>
> Hello,<br>
> <br>
> AWS does not provide the ability to attach anycasted IP addresses to a<br>
> NAT gateway, regardless of whether it would work, so that's the end of<br>
> your quest.<br>
> <br>
>> The reason I want a predictable IP is to communicate this IP to website<br>
>> owners so they can allow access from these IPs into their networks.<br>
>> I chose IP as an example; it can also be a subnet, but what I don't want to<br>
>> provide is a list of 100 different IP addresses without any predictability.<br>
> <br>
> If you bring your own IP addresses, you can attach a separate /24s of<br>
> them to your VPCs in each region, providing you with a single<br>
> predictable range of source addresses. You will find it difficult and<br>
> expensive to acquire that many IP addresses from the regional<br>
> registries for the purpose you describe.<br>
> <br>
> <br>
> Silly question but: for a web crawler, why do you care whether it has<br>
> the limited geographically distribution that a cloud service provides?<br>
> It's a parallel batch task. It doesn't exactly matter whether you have<br>
> minimum latency.<br>
> <br>
> Regards,<br>
> Bill Herrin<br>
> <br>
> <br>
> <br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature">Vimal</div>