我刚刚设置了一个新的 AirPort Extreme 和 CentOS 6.2 服务器——该服务器是一个通用存储机器,所以我已经在上面设置了 Samba 和 Avahi。我可以通过运行 OS X Lion 的 MacBook Pro 的 IP 地址轻松访问服务器,但尝试按名称解析它 - 从终端使用ping
, 在连接提示 ( smb://my-server/
) 中 - 不起作用。
我需要采取任何特定的配置步骤吗?如何从 OS X 按名称访问服务器?
小智 6
一段时间以来,大多数 Linux 发行版都支持 mDNS 和相关发现服务。静态 IP 或固定主机名对于云/快速部署/Vagrant 不可扩展。理想情况下,云初始化工具中有一些很好的hackery,并且还可能在首次启动时根据字符串模板生成唯一的主机名(以及重新封装脚本)。
无论如何,这是让 mDNS 适用于大多数主要操作系统的简单方法。
在 CentOS/RHEL/Fedora 上:
su - -c 'yum install -y avahi avahi-tools nss-mdns ;
service avahi-daemon start'
Run Code Online (Sandbox Code Playgroud)
在 Debian/Ubuntu 上:http : //wiki.debian.org/ZeroConf
sudo su - -c 'apt-get install -y avahi-daemon avahi-discover nss-mdns ;
sudo invoke-rc.d avahi-daemon start'
Run Code Online (Sandbox Code Playgroud)
在 Arch 上:https : //wiki.archlinux.org/index.php/Avahi
echo 'You won't need hand-holding here I assume.'
Run Code Online (Sandbox Code Playgroud)
全部:
好的是这也让 mDNS 在 Linux 机器上以另一种方式工作,因此您通常可以以正确的方式开始 ping/ssh/etc 到您的 Mac。呜。avahi-browse --all
很整洁。
不要忘记作为服务器的机器上的入站防火墙规则。
-A INPUT -d 224.0.0.251/32 -p udp -m udp --dport 5353 -m comment --comment "mDNS" -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
此外,使用 /etc/avahi/ 进行配置并重新启动守护进程。
顺便说一句,我正在 VMware Fusion 4.x 下为我的 MacBook Pro 上的客户端构建一个 CentOS 6.2 x86_64 最小设备。
也许有人会添加一点,以确保服务(特别是 ssh 和 web url)的发布和发布对 Mac、Linux 甚至 Windows 客户端正常工作。
我将从苹果方面来尝试一下这个问题。Jason 的评论非常正确 - 简而言之,问题更多的是如何使用来自 Mac 操作系统完全不常见的操作系统的 Apple 软件。
在 Apple 方面,您的 Mac 无需任何配置即可查看任何正在广播 SMB 的服务器,因此除了打开 SMB 守护程序之外,请确保没有防火墙阻止这些广播数据包,并确保两台计算机位于同一网段,以便广播数据包来回移动。您可以看到bonjour 服务列表,如果您想获取源代码、浏览文档并为 CentOS 服务器编译 bonjour,这也可能对您有所帮助。
同样,Mac 只需连接到一个网络,您的服务器在该网络上通告(发送)数据包以宣布它将共享 SMB 或 bonjour 服务。
另一个方法是在 CentOS 服务器上运行 DNS,让你的 Mac 获取它的 DNS 记录,并且无论服务器是否主动共享,它都应该能够解析服务器名称。
最后,静态 IP 地址也可以工作,您只需将 CentOS 服务器的地址弹出到 /private/etc/hosts 中(在 Mac 操作系统上有一个 /etc 的符号链接指向 /private。)
归档时间: |
|
查看次数: |
4257 次 |
最近记录: |