我在运行Ubuntu 9.04 Desktop的计算机上configuration了Samba和LAMP服务器,并且希望确保我们networking中的其他计算机始终可以通过名称访问该计算机上的samba和Web服务。 假设主机的名称是“buildmachine1”。 我希望Windows客户端能够通过“\ buildmachine1 \ developersproject1”访问samba共享,或者在“ http:// buildmachine1 / websvn ”
buildmachine1连接到我们的LAN,这是一个更大的Windowsnetworking的一部分。 这个更大的networking由一个超级强大的生物pipe理,生活在一个无法到达的星系,并将他们的networkingpipe理任务外包给生活在另一个不可及的星系中的超级强大的生物。 底线,buildmachine1和任何正在/用户有权joinWindows域。
我有限的经验,以及这个问题,暗示一台机器必须是一个域名的成员,可以通过它的名字来访问。 所有的开发人员都可以通过IP地址访问机器,但是这个地址会周期性地变化,所以如果我们已经把驱动器号映射到IP地址或者通过http://192.168.99.99/svnconfiguration我们的Subversion客户端访问版本库,当IP改变时,必须重新configuration所有的东西。
考虑到环境和平台,我们如何可靠地使用机器的名称而不是IP地址的变化来访问机器呢?
不,它不需要成为Windows域的成员。 但是因为它是一个内部服务器,所以简单的步骤是:
这两个都会让你从这个超级强大的人那里请求这个改变 – 而这正是它的方式。 但是没有特定的Windows。
另一种方法是让机器在收到它的dynamicIP租约时注册自己的名字,尽pipe这需要很多东西才是正确的……大多数已经在这个问题上得到了回答 。
作为最后的游击手段,您可以将机器IPinput到每个人的主机文件中,并在IP更改时不断更改。 听起来很棒,不是吗? ;)
所以最终你总是需要有超强的生物遵循政策,政策应该包括如何批准(或否定)和实施变革……而制定工作政策最终是pipe理责任。 或者无论如何,这件事情。
您不需要一台计算机成为域名的一部分来通过其名称(NetBIOS名称)引用它。 NetBIOS能够通过协商谁将成为子网上的主浏览器来独立于服务器运行。 为了在大型networking中减less事件的发生,通常使用WINS服务器— WINS就像NetBIOS名字的DNS一样。
Samba使用NetBIOS广播,并使用主机名作为NetBIOS名称。 所以通常你要找的东西就行了。
问题是NetBIOS仅限于本地子网,除非涉及到WINS服务器。 所以你可以在你的服务器上安装nmdb (Linux WINS服务器),并在你的Windows客户机上添加一个辅助的WINS服务器…但是这里的问题是你需要一个静态IP来在客户机上添加一个WINS服务器: )。
所以除非你能从上面得到一个静态的IP,否则强制一个静态的IP就是SOL。
既然你提到你的客户是一个更大的Windowsnetworking的一部分。 我会假设包括一个WINS服务器。 我会问你的那个服务器的pipe理员在那里为Linux服务器添加一个静态条目。 如果只有几个客户端,你也可以欺骗和编辑主机文件。
疯狂的想法在这里,但你必须有能力打开一个帮助台票正确?
我知道这将涉及跳过许多篮球,但为什么不在服务台打开一张票,简单明了,告诉他们你想做什么。 IT似乎忘记了他们在那里支持最终用户。
我会build议这样的事情。
我们要求将以下MAC地址00 00 00 00 00 00 00 00分配给静态IP地址,并将此IP地址映射到buildserver1.internal.company.local的内部DNS名称
我们要求这是因为dynamicIP更改导致构build失败,从而导致项目延迟。
如果需要经理批准,请通知所需的经理级别批准。
现在,如果IT拒绝了它,那么你就转发给你的经理,如果他拒绝了,那就接受这个问题。 并且为所有你需要的东西,无论多小,通过拒绝共鸣的请求来logging所有的IT问题,三件事情之一将会发生,
我在一个地方做了这个,他们最终给了开发者12个静态IP地址来运行testing服务器。
Windows机器使用NetBIOS处理这个问题。 我对Linux的调查不够了解,但是Google可能会find一个可以在Linux上运行的NetBIOS兼容服务。
NetBIOS名称parsing虽然不是很优雅。 它只是做一个广播来问谁有这个名字,所以它只能在一个子网上工作。 如果你可以按照@Oskar的build议那么这将是一个更优雅的解决scheme。
编辑:虽然你的生成机器有一个DHCP地址,你可能会发现它不会经常改变。 通常只有当DHCP租约到期时,服务器才会closures。 我在这里假设,这个盒子不会经常closures…如果它的地址不会经常改变,那么你可能会发现hosts文件是一个可以接受的解决scheme。 在lmhosts.sam中你可以指定
#include <filename>
其中文件名可以是UNCpath。 所以你只需要在单个文件中保持单个条目。
我仍然认为如果你能find帮助的话,得到你的networkingpipe理员的帮助,给你的编译机器一个DNS入口(@Oskar)是更好的select。