Monday, November 7, 2011

freebsd 路由问题

使用virtualbox安装的freebsd配置的nginx+php-fpm+mysql安装的wordpress无法使用no-ip的动态域名访问, 可是同样配置的arch上的wordpress却可以从外网无障碍访问?


使用路由的端口映射,把外网的80端口转给内网的虚拟机上,就是使用的NAT(network address translation)(网络地址转换)


仔细研究了研究,2机的不同点只有ip,freebsd的ip为192.168.1.110,arch的ip为192.168.111

然后就想到是不是路由设置的问题?

2台guest机为了和主机通信,都是使用的2个网卡,一个使用的NAT自动获取地址;1个使用的bridged 桥接网络来实现和 host机的链接.

使用netstat -s 来察看

发现freebsd的设定为192.168.1.110的2号网卡em0没有设置网关....难道就是这个问题?

最后,每个路由的不同属性可以在 Flags 列中看到。下边是个关于这些标志和它们的含义的一个简表:
U Up: 路由处于活动状态。
H Host: 路由目标是单个主机。
G Gateway: 所有发到目的地的网络传到这一远程系统上, 并由它决定最后发到哪里。
S Static: 这个路由是手工配置的,不是由系统自动生成的。
C Clone: 生成一个新的路由, 通过这个路由我们可以连接上这些机子。 这种类型的路由通常用于本地网络。
W WasCloned: 指明一个路由——它是基于本地区域网络 (克隆) 路由自动配置的。
L Link: 路由涉及到了以太网硬件。

通过修改/etc/rc.conf 文件,给em0网卡添加路由

在/etc/rc.conf中,添加
defaultrouter="192.168.1.1"

然后重启网络服务
# /etc/rc.d/netif restart
注意: 如果在 /etc/rc.conf 中配置了默认网关, 还需要运行下面的命令:
# /etc/rc.d/routing restart


然后,使用noip注册的域名来访问,OK啦!


参考  :  设置网卡
             网关和路由

No comments: