Здравствуйте уважаемые поклонники всевозможных *NIXов.Вопрос такой: есть сервер Samba. При входе на расшаренные ресурс с Windows машин происходит некоторое торможение (8 секунд), потом дерево каталогов кэшируется и всё нормально. При открытии файлов торможение регулярно. Скорость копирования файлов на Самбу и с неё хорошая - 5-8 Мбайт/сек.
Собственно вопрос: как избавится от этой задержки в 8 секунд?
Имеем:
uname -a
FreeBSD 7.1-RELEASE ... amd64
самба из портов
/usr/local/sbin/smbd -V
Version 3.0.32
конфиг:
[global]
server string = dev server
netbios name = RID_W_FS1
workgroup = ITGROUP
load printers = no
guest ok = no
printable = no
public = no
log file = /var/log/samba/%m.log
log level = 8
max log size = 50000000
dns proxy = No
smb passwd file = /usr/local/etc/samba/smbpasswd
security = user
encrypt passwords = yes
socket options = SO_KEEPALIVE SO_BROADCAST TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192
wins server = 10.24.1.20
interfaces = 10.24.15.110/255.255.255.0 127.0.0.1/255.0.0.0
disable spoolss = Yes
show add printer wizard = No
client NTLMv2 auth = Yes
[MyDep]
comment = Мой отдел
path = /usr/samba
read only = No
create mask = 0660
directory mask = 0770
hide files = .snap
map archive = No
--------------------------------------------------------
Логирование включал и на 10й уровень, но большей детализации чем на 8м (в том моменте где эти пресловутые 8 секунд потерялись) получить не удалось.
Собственно лог:
[2009/03/19 00:24:28, 3] libsmb/ntlmssp.c:debug_ntlmssp_flags(63)
Got NTLMSSP neg_flags=0xe2088297
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_NEGOTIATE_OEM
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_SIGN
NTLMSSP_NEGOTIATE_LM_KEY
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_KEY_EXCH
NTLMSSP_NEGOTIATE_56
[2009/03/19 00:24:28, 5] auth/auth.c:get_ntlm_challenge(97)
auth_get_challenge: module guest did not want to specify a challenge
[2009/03/19 00:24:28, 5] auth/auth.c:get_ntlm_challenge(97)
auth_get_challenge: module sam did not want to specify a challenge
[2009/03/19 00:24:28, 5] auth/auth.c:get_ntlm_challenge(137)
auth_context challenge created by random
[2009/03/19 00:24:28, 5] auth/auth.c:get_ntlm_challenge(138)
challenge is:
[2009/03/19 00:24:28, 5] lib/util.c:dump_data(2264)
[000] 18 AF F3 48 3A 3C F2 F0 ...H:<..
[2009/03/19 00:24:36, 5] lib/util.c:show_msg(484)
[2009/03/19 00:24:36, 5] lib/util.c:show_msg(494)
size=246
smb_com=0x73
smb_rcls=22
smb_reh=0
smb_err=49152
smb_flg=136
smb_flg2=51201
smb_tid=0
smb_pid=65279
smb_uid=100
smb_mid=6656
smt_wct=4
smb_vwv[ 0]= 255 (0xFF)
smb_vwv[ 1]= 0 (0x0)
smb_vwv[ 2]= 0 (0x0)
smb_vwv[ 3]= 151 (0x97)
smb_bcc=203
[2009/03/19 00:24:36, 10] lib/util.c:dump_data(2264)
[000] A1 81 94 30 81 91 A0 03 0A 01 01 A1 0C 06 0A 2B ...0.... .......+
[010] 06 01 04 01 82 37 02 02 0A A2 7C 04 7A 4E 54 4C .....7.. ..|.zNTL
[020] 4D 53 53 50 00 02 00 00 00 12 00 12 00 30 00 00 MSSP.... .....0..
[030] 00 95 82 8A E2 18 AF F3 48 3A 3C F2 F0 00 00 00 ........ H:<.....
[040] 00 00 00 00 00 38 00 38 00 42 00 00 00 52 00 49 .....8.8 .B...R.I
[050] 00 44 00 5F 00 57 00 5F 00 46 00 53 00 31 00 02 .D._.W._ .F.S.1..
[060] 00 12 00 52 00 49 00 44 00 5F 00 57 00 5F 00 46 ...R.I.D ._.W._.F
[070] 00 53 00 31 00 01 00 12 00 52 00 49 00 44 00 5F .S.1.... .R.I.D._
[080] 00 57 00 5F 00 46 00 53 00 31 00 04 00 00 00 03 .W._.F.S .1......
[090] 00 00 00 00 00 00 00 55 00 6E 00 69 00 78 00 00 .......U .n.i.x..
[0A0] 00 53 00 61 00 6D 00 62 00 61 00 20 00 33 00 2E .S.a.m.b .a. .3..
[0B0] 00 30 00 2E 00 33 00 32 00 00 00 49 00 54 00 47 .0...3.2 ...I.T.G
[0C0] 00 52 00 4F 00 55 00 50 00 00 00 .R.O.U.P ...
[2009/03/19 00:24:36, 10] lib/util_sock.c:read_smb_length_return_keepalive(623)
got smb length of 376
Здесь интересны следующие строки (между которыми 8 секунд):
[2009/03/19 00:24:28, 5] lib/util.c:dump_data(2264)
[000] 18 AF F3 48 3A 3C F2 F0 ...H:<..
[2009/03/19 00:24:36, 5] lib/util.c:show_msg(484)
--------------------------------------------------------
что я делал:
пытался отключить ntlm аутентификацию:
client NTLMv2 auth = No
ntlm auth = No
client lanman auth = Yes
lanman auth = Yes
Правил /etc/rc.conf внося туда IP машины с Windows и полное(FQDN) и сокращённое её имя.
--------------------------------------------------------
Некоторые общие моменты:
Самба в домен не включена, аутентификация средствами самой Самбы. Включить в домен возможности нет (политика компании такова).
Интересное наблюдение:
команда nslookup с FQDN клиентской машины выполненная на сервере, где стоит Самба даёт моментальный результат
# nslookup ИмяКлиентскойМашины.itgroup.local
Server: 10.24.1.20
Address: 10.24.1.20#53
Name: ИмяКлиентскойМашины.itgroup.local
Address: 10.39.6.37
команда nslookup с именем без (доменной части) клиентской машины выполненная на сервере, где стоит Самба даёт примерно 8ми секундную задержку и такой вывод:
# nslookup ИмяКлиентскойМашины
;; Got SERVFAIL reply from 10.24.1.20, trying next server
;; Got SERVFAIL reply from 10.24.1.30, trying next server
;; connection timed out; no servers could be reached
Если кто сталкивался - помогите плиз.......