【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
全局流量管理 GTM,标准版 1个月
简介: 【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果

当使用Azure Redis高级版时候,为了能更好的保护Redis的安全,启用了虚拟网路,把Redis集成在Azure中的虚拟网络,只能通过虚拟网络VENT中的资源进行访问,而公网是不可以访问的。但是在使用中,有时候会有一些疑惑,大多数的疑惑我们可以在Azure Redis的文档中得到答案,有一些则需要通过自己在使用中得到验证或解释。如:

  • 当集成成功后,为什么通过公网nslookup也可以解析成功Redis 域名呢?
  • 在内网中如何连接Redis呢?通过何种方式来进行测试?
  • Redis的防火墙的白名单起什么作用呢?是否可以设置允许外网的IP地址进行访问呢?

 

如何为高级 Azure Redis 缓存配置虚拟网络, 请见文档:https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-premium-vnet特别注意的是,将 Azure Redis 缓存部署到资源管理器 VNet 时,缓存必须位于专用子网中,该子网中只能包含 Azure Redis 缓存实例,而不能包含其他资源。 如果尝试将 Azure Redis 缓存部署到包含其他资源的资源管理器 VNet 子网,部署会失败。

 

我们就通过实验来一一解答.

1) 当集成成功后,为什么通过公网nslookup也可以解析成功Redis 域名呢?

因为在Redis创建号之后,是通过DNS域名来进行的访问(公网与内网的访问方式一样,也可以通过IP地址访问)。而内网中如果我们没有自定义DNS服务器,这需要向外部公网的DNS服务器寻求对次Redis的域名进行解析,如(114.114.114.114,8.8.8.8), 而这是Redis服务在为了不论是在内网,外网的情况下都能解析到Redis DNS而设计的。但是如果构建的内部虚拟网络(VNET)如果不允许想外部发送请求,这必须在自己的DNS服务器上配置该条A记录。

虽然外网能够解析出该Redis 域名,但是解析出的是一个内网IP地址,所以外部网络也是无妨访问此Redis的。

 

2) 在内网中如何连接Redis呢?通过何种方式来进行测试?

首先,需要在内网中找一台虚拟机。通过tcping.ext的小工具来对6379,6380端口进行ping命令并查看返回结果。如果ping的结果正常,则可以使用Redis-cli工具连接到Redis服务。如Windows平台可以https://github.com/microsoftarchive/redis/releases 下载。

使用tcping.ext测试端口命令:

tcping.exe yourcachename.redis.cache.chinacloudapi.cn 6379


tcping.exe yourcachename.redis.cache.chinacloudapi.cn 6380

使用Redis-cli连接到Redis命令:

redis-cli.exe -h yourcachename.redis.cache.chinacloudapi.cn -p 6379 -a YourAccessKey

 

3) Redis的防火墙的白名单起什么作用呢?是否可以设置允许外网的IP地址进行访问呢?

当集成在内部虚拟网络之后,外部公网是不可以继续访问的[VNet 是云中的专用网络。 为 Azure Redis 缓存实例配置了 VNet 后,该实例不可公开寻址,而只能从 VNet 中的虚拟机和应用程序进行访问]。而此时,防火强的白名单的作用对象也变成了内网中的IP地址,即:可以通过设置防火墙白名单,只允许内网中的部分资源访问Redis。

 

[END]

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?
|
2月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
【Azure Redis 缓存】Redission客户端连接Azure:客户端出现 Unable to send PING command over channel
|
2月前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存】Lettuce 连接到Azure Redis服务,出现15分钟Timeout问题
【Azure Redis 缓存】Lettuce 连接到Azure Redis服务,出现15分钟Timeout问题
【Azure Redis 缓存】Lettuce 连接到Azure Redis服务,出现15分钟Timeout问题
|
2月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】使用StackExchange.Redis,偶发ERROR - Timeout performing HSET (15000ms)
【Azure Redis 缓存】使用StackExchange.Redis,偶发ERROR - Timeout performing HSET (15000ms)
|
2月前
|
缓存 NoSQL Java
【Azure Redis 缓存】示例使用 redisson-spring-boot-starter 连接/使用 Azure Redis 服务
【Azure Redis 缓存】示例使用 redisson-spring-boot-starter 连接/使用 Azure Redis 服务
|
2月前
【Azure App Service】列举为App Service集成虚拟网络(VNET)操作时所需要的最小权限
【Azure App Service】列举为App Service集成虚拟网络(VNET)操作时所需要的最小权限
|
2月前
|
缓存 负载均衡 NoSQL
【Azure Redis】Azure Redis添加了内部虚拟网络后,其他区域的主机通过虚拟网络对等互连访问失败
【Azure Redis】Azure Redis添加了内部虚拟网络后,其他区域的主机通过虚拟网络对等互连访问失败
|
2月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】应用中出现连接Redis服务错误(production.ERROR: Connection refused)的排查步骤
【Azure Redis 缓存】应用中出现连接Redis服务错误(production.ERROR: Connection refused)的排查步骤
|
2月前
|
缓存 NoSQL 网络安全
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题
【Azure Redis 缓存】使用开源工具redis-copy时遇见6379端口无法连接到Redis服务器的问题
|
2月前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存】Azure Redis 遇见的连接不上问题和数据丢失的情况解答
【Azure Redis 缓存】Azure Redis 遇见的连接不上问题和数据丢失的情况解答

热门文章

最新文章