首页 新闻 会员 周边

关于redis在虚拟机联接问题

0
悬赏园豆:60 [待解决问题]

在vm虚拟机ContOs64拉的6.3下安装redis-2.6.12发现在linux下可以用127.0.0.1来访问

我在win7下用C#来访问发现不可以

我测试的代码如下

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ServiceStack.Common.Extensions;
using ServiceStack.Redis;
using ServiceStack.Redis.Generic;
using ServiceStack.Text;
using ServiceStack.Redis.Support;

namespace CaoHuanSystem
{
public partial class frmRedis : Form
{
public frmRedis()
{
InitializeComponent();
}
protected RedisClient Redis = new RedisClient("172.16.1.200", 6379);
private void button1_Click(object sender, EventArgs e)
{
//string myname = Redis.Get<string>("myname");
Redis.Set("myname", "xxx");
}
}
}

会提示没办法联接到172.16.1.200:6379

请问高手们是那里出问题了,ping的通172.16.1.200

冷火的主页 冷火 | 初学一级 | 园豆:4
提问于:2013-04-24 16:55
< >
分享
所有回答(2)
0

第一:有个配置 bind 127.0.0.1 注释掉,这个只能本机访问;

第二:ifconfig 一下看看linux的地址,应该是你win上的vm8的网卡地址,redisClient(linux的地址,6379);

第三:你可以用VirtualBox做端口映射[可以直接导入vm盘],直接把虚拟机的端口映射为宿主机的端口.

shak110 | 园豆:204 (菜鸟二级) | 2013-04-25 10:28

bind 127.0.0.1 注释掉已经注掉的。我是ifconfig查过是172.16.1.200不是win的网卡地址。我在linux还可以上网的,是正常的.目前使用是vm虚拟机,桥接模式。

支持(0) 反对(0) 冷火 | 园豆:4 (初学一级) | 2013-04-25 11:35
0

1、请将redis的配置bind 127.0.0.1换成远程地址172.16.1.200;

2、加载redis配置,redis-server 配置文件路径;

3、然后通过redis-cli -h 172.16.1.200 -p 6379 来查看是否能连接redis server

skillCoding | 园豆:283 (菜鸟二级) | 2013-04-26 09:27

解决了,可能是端口问题我把端口改成6479然后再开放在iptables里再开放这个端口就可以了。太神了

支持(0) 反对(0) 冷火 | 园豆:4 (初学一级) | 2013-04-27 10:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册