为了在我们的预览环境中测试Open Graph API,我们需要在防火墙中挖一个洞以允许Facebook刮取我们的对象页面。我们应该允许哪些IP范围?
答案 0 :(得分:25)
修改强>
Facebook已经表现出一些爱,现在正在让所有人都知道IP块http://developers.facebook.com/docs/ApplicationSecurity/#facebook_scraper https://developers.facebook.com/docs/sharing/best-practices#crawl
Facebook Scraper
许多平台服务,例如Social Plugins和Open 图表要求我们的系统能够访问您的网页。我们 认识到有些情况下你可能不想要这些 公共互联网上的页面,测试期间或其他安全性 的原因。
为方便起见,您应该在安全性方面做出例外 系统允许Facebook通过添加来刮取这些页面 以下IP范围,截至2012年4月准确无误。
31.13.24.0/21 31.13.64.0/18 66.220.144.0/20 69.63.176.0/20 69.171.224.0/19 74.119.76.0/22 103.4.96.0/22 173.252.64.0/18 204.15.20.0/22
您也可以将用户代理用于防火墙,而不是IP。
http://developers.facebook.com/docs/reference/plugins/like/
Facebook什么时候刮我的页面?
Facebook需要抓住你的页面以了解如何展示它 该网站。
Facebook每24小时擦除一次页面以确保属性 最新。当Open Graph的管理员也会抓取该页面 页面单击Like按钮,并在URL输入时 Facebook URL Linter。 Facebook会在您的网址上观察缓存标头 - 它 将按优先顺序查看“Expires”和“Cache-Control”。 但是,即使你指定了更长的时间,Facebook也会刮掉你的 每24小时一次。
刮刀的用户代理是:“facebookexternalhit / 1.1 (+ http://www.facebook.com/externalhit_uatext.php)“
答案 1 :(得分:3)
whois -h whois.radb.net -- '-i origin AS32934' | grep ^route
查看所有范围。
答案 2 :(得分:2)
66.220.144.0/20
66.220.144.0/21
69.63.176.0/20
69.63.176.0/21
69.63.176.0/24
69.63.184.0/21
69.171.224.0/19
204.15.20.0/22
31.13.24.0/21
答案 3 :(得分:1)
Facebook现在发布他们的IP range。
截至2012年4月,它是:
31.13.24.0/21
31.13.64.0/18
66.220.144.0/20
69.63.176.0/20
69.171.224.0/19
74.119.76.0/22
103.4.96.0/22
173.252.64.0/18
204.15.20.0/22
答案 4 :(得分:1)
新信息列在以下网址&是的,他们确实公开了这个信息。
运行此命令以获取爬网程序的当前IP地址列表 使用。
whois -h whois.radb.net -- '-i origin AS32934' | grep ^route
如
# For example only - over 100 in total
31.13.24.0/21
66.220.144.0/20
2401:db00::/32
2620:0:1c00::/40
2a03:2880::/32
所以是的,DMCS提到的那些,是正确的。只想验证&发现了这个信息。
由于
答案 5 :(得分:0)
Facebook不会正式发布其抓取源地址范围,但您可以在公开的BGP路由表中查看其所有IP范围的列表:
我们目前正在使用此列表: