当前位置:Linux教程 - Linux综合 - 跨网关浏览samba

跨网关浏览samba

  问题的提出: samba给我们提供了很好的unix/m$network共享资源的能力, 但由于samba用的是netbios on tcp/ip, 所以在跨网关浏览上有一定的问题. N1_A N1_B N1_C N1_D N1_E ------------------------------------------------------- subnet 1 +---+ +---+ R1 BRouter 1 BRouter 2 R2 +---+ +---+ subnet 2 subnet 3 -------------------------- ------------------------------------ N2_A N2_B N2_C N2_D N3_A N3_B N3_C N3_D (wins, (95) (NT) (samba) 111.222.111.222) 比如上图中N3_C是samba server, 那么在subnet 1 和 subnet 2中的95/nt在 网络邻居里就看不见N3_C (而N3_A(95),N3_B(NT)可以通过netbeui和netbios on ipx 透过brouter R2和R1出现在其他子网机器的网络邻居里), samba怎么解决这个问题? 问题的速解: 将所有机器的wins指定到同一台机器, 比如说N2_D (NT或者samba). 95/NT的wins设定我想谁都会就不多说了. samba的wins client设定是在smb.conf里[global]段中加上: wins support = no wins server = 111.222.111.222 ; 你的wins的ip 如果是samba自己要当wins server的话, 则是在[global]段中加上: wins support = yes (注意, samba不能同时当wins server和wins client) 这样设定好以后, 所有网段的机器就能看见其他网段的samba server了 :-) 95和NT一般要设两个wins, 在这里只要让samba使用的wins和95/NT使用的 主wins一致就可以了. 当有网络里有NT server时, 最好用NT Server来当 wins, 而不要用samba. 问题的解释: 这个问题其实是根据m$network on tcp/ip跨网段浏览的机制得到解决的.这个解决 方法对95/NT也适用, 而且由于不需要在子网间广播netbeui和ipx, 对比较大的网使用 效率的提高也有很大的帮助. 仍然使用这副图来解释m$network on tcp/ip跨网段浏览机制: (DMB) N1_A N1_B N1_C N1_D N1_E ------------------------------------------------------- subnet 1 +---+ +---+ R1 Router 1 Router 2 R2 +---+ +---+ subnet 2 subnet 3 -------------------------- ------------------------------------ N2_A N2_B N2_C N2_D N3_A N3_B N3_C N3_D (LMB) (WINS) (LMB) 当一台提供共享服务的机器(95/NT/Samba)启动时, 它会向整个子网广播自己提供 哪些服务. 而LMB(Local Master Browser局域主浏览器)则收集并记录这些广播, 这个 记录的清单就是 m$network浏览机制的基础, 在这里假设所有的机器都提供共享服务 那么, 浏览清单(browse list)上就应该有所有的机器. Subnet Browse Master List ------ ------------- ---- Subnet1 N1_C N1_A, N1_B, N1_C, N1_D, N1_E Subnet2 N2_B N2_A, N2_B, N2_C, N2_D Subnet3 N3_D N3_A, N3_B, N3_C, N3_D LMB是机器间(95,NT,Samba)通过一种竞选机制自动产生的.这里不多加叙述. 此时由于网段之间是分隔开的, 所以每个网段的browse list上就只有自己网段的 机器. 现在考察下一步, 当subnet 2里的N2_B成为LMB后,它就要寻找DMB(Domain Master Browser域主浏览器)来同步信浏览信息, 于是它就询问wins得到DMB的ip地址. DMB 的产生其实也类似于LMB, 是LMB间自发竞争产生的. 在这个例子里, N2_B知道了N1_C是DMB, 于是和N1_C同步浏览表browse list, 这样 同步过后, 各子网的browse list就成为:
[1] [2] 下一页 

Subnet Browse Master List ------ ------------- ---- Subnet1 N1_C N1_A, N1_B, N1_C, N1_D, N1_E, N2_A(*), N2_B(*), N2_C(*), N2_D(*) Subnet2 N2_B N2_A, N2_B, N2_C, N2_D N1_A(*), N1_B(*), N1_C(*), N1_D(*), N1_E(*) Subnet3 N3_D N3_A, N3_B, N3_C, N3_D 这样的事同样发生在N3_D和N1_C之间, 而后N2_B和N1_C再次同步, 最后, 每台机器 就都出现在各个子网的浏览表里了: Subnet Browse Master List ------ ------------- ---- Subnet1 N1_C N1_A, N1_B, N1_C, N1_D, N1_E, N2_A(*), N2_B(*), N2_C(*), N2_D(*), N3_A(*), N3_B(*), N3_C(*), N3_D(*) Subnet1 N1_C N1_A, N1_B, N1_C, N1_D, N1_E, N2_A(*), N2_B(*), N2_C(*), N2_D(*), N3_A(*), N3_B(*), N3_C(*), N3_D(*) Subnet2 N2_B N2_A, N2_B, N2_C, N2_D N1_A(*), N1_B(*), N1_C(*), N1_D(*), N1_E(*) N3_A(*), N3_B(*), N3_C(*), N3_D(*) Subnet3 N3_D N3_A, N3_B, N3_C, N3_D N1_A(*), N1_B(*), N1_C(*), N1_D(*), N1_E(*), N2_A(*), N2_B(*), N2_C(*), N2_D(*) 资源的获得: FTP://ftp.sepc.ac.cn/pub/Linux/collect/network/daemons/samba -- Late EXPanded aNd eXtended

(出处:http://www.sheup.com)


上一页 [1] [2] 

N1_A(*), N1_B(*), N1_C(*), N1_D(*), N1_E(*), N2_A(*), N2_B(*), N2_C(*), N2_D(*) 资源的获得: FTP://ftp.sepc.ac.cn/pub/Linux/collect/network/daemons/samba -- Late EXPanded aNd eXtended

(出处:http://www.sheup.com/)


上一页 [1] [2] [3]