ローカルSambaサーバーからSamba共有にアクセスしようとすると、smblcient -L //localhost
遅延後にエラーメッセージが表示されます。
プロトコルネゴシエーションに失敗しました:NT_STATUS_IO_TIMEOUT
問題の原因を体系的に見つけるためのデバッグ手順は何ですか?
背景:
私はトレーニング目的でCentOS 7仮想マシンのSambaサーバーに簡単な共有フォルダを設定しました。
smb.confファイルに次の行を追加し、ディレクトリ、selinux設定、およびファイアウォールルールを作成しました。
[sambashare]
comment = sambashare
path = /sambashare
public = yes
writable = yes
write list = +users
答え1
解決策:
/etc/hostsまたはDNSサーバーで手動で設定する必要があるサーバー名のDNS名解決を構成していません。
デバッグプロセス:
の場合NT_STATUS_IO_TIMEOUTtcpdumpなどのネットワークトラフィックアナライザを試してください。 (例:tcpdump -i>ネットワークインタフェース<)
次の行が表示される場合:
07:57:54.726390 IP 10.0.2.9.39939 > 10.0.2.1.domain: 20986+ A? server.example.local. (38)
07:57:54.726648 IP 10.0.2.9.39939 > 10.0.2.1.domain: 44015+ AAAA? server.example.local. (38)
07:57:54.727069 IP 10.0.2.9.48743 > 10.0.2.1.domain: 34381+ PTR? 1.2.0.10.in-addr.arpa. (39)
07:57:54.732388 IP 10.0.2.1.domain > 10.0.2.9.39939: 20986 NXDomain* 0/0/0 (38)
07:57:54.733400 IP 10.0.2.1.domain > 10.0.2.9.48743: 34381 NXDomain* 0/0/0 (39)
07:57:54.733642 IP 10.0.2.9.53191 > 10.0.2.1.domain: 24458+ PTR? 9.2.0.10.in-addr.arpa. (39)
これは、smbclientがDNS解決の問題であるサーバー名server.example.localを解決できないことを意味します。
答え2
Fedora Rawhide 33 の場合、「/etc/samba/smb.conf」には次のいずれかが必要です。
client min protocol = CORE
または
client min protocol = NT1
そして、「/etc/hosts」にホストを定義します。
<ip_address> REMOTE_DEVICE
答え3
次の行を追加しましたが、うまくいき/etc/samba/smb.conf
ました。
guest ok = yes
私の共有パラメータセクションにあります。
その後、サービスを再起動しましたが、正常に動作しました。