- ベストアンサー
WindowsXPからSambaにアクセスできない問題の原因と解決法
- WindowsXPの社内のドメインに参加しているマシンからはSamba-2へのアクセスができない一方、参加していないマシンからはアクセス可能。原因はSamba-2側の問題か、参加しているマシン側の問題か検討中。
- 会社内の同一ネットワーク上には2つのSambaサーバーと複数のWindowsXPのクライアントが存在。Samba-1のみがWindowsXPの参加しているマシンからもアクセス可能である。Samba-2のみが参加していないマシンからアクセス可能である。
- Samba-1とSamba-2の両方にはユーザー登録済みであり、pingでも信号は通っているが、Samba-2へのアクセスができない問題が発生。原因を特定し、解決するための情報を求めている。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
samba2のホストとドメインの設定をユニークにしてみては どうでしょう? セグメント内に同名がいなければ良いんですが。 といっても、IP指定でアクセス拒否されているので無駄かも しれません。 やっぱり、samba2側とアクセスするwindows側でetherealで パケットをキャプチャしてどんな内容のエラーかを見てはどう でしょうか? そうすることで、samba2がパケットを受信しているかどうか もしくは、エラーの内容までわかるかと。 キャプチャしないでも、昔で言うsyslogにはログが残ってる かもしれません。 とりあえず、/var/logのsyslog(ないかも), messagesとかの ログファイルとかにsambaのログが出ていないか見てみては どうでしょう
その他の回答 (3)
- f_attck
- ベストアンサー率33% (40/118)
127.0.0.1 Localhost これは、多分問題ないです。 かつ、hostsの役割はDNSと同様で、それをローカルでやってると 思ってください。 つまり、Linux側から実行するping Localhostとping 127.0.0.1は 同じ意味です。 また、Linuxのhostsファイルはwindowsからは参照されません。 とまあ、最初に思ったことです。 補足の内容を見るとすごくおかしいですね。 ・windowsからsamba2へアクセスした場合にLocalhostが無い samba2に対する要求を出すのは当然ですが、DNSがいるのですか? 誰がLocalhostに変更していますか? 試しにwindows側でping Localhostとやってみてください。 samba2のIPに対して送信していますか? とりあえず、これを確認してください。 ひょっとして、samba1, samba2のホスト名が同じで、sambaで共有する パスが違っていてsamba2へのアクセスだと思っていたのが、samba1への アクセスで、permitionではじかれているだけとか・・・・ /etc/sysconfig/networkのHOSTNAMEを確認してください。
補足
毎度ありがとうございます。 WindowsXPから、ping Localhost とすると WindowsXP自身が返ってきます。ご指摘の通り、WindowsXPの hostsファイルに、127.0.0.1 localhost の記述があるためと思います。 Samba1、Samba2へのアクセスをipアドレス それぞれ10.10.11.5 と10.10.11.4と指定してファイルアクセスしても、10.10.11.4のみがアクセスできず、 _________________________________ \\10.10.11.4にアクセスできません。このネットワークリソースを使用するアクセス許可がない可能性があります。アクセス許可があるかどうかこのサーバーの管理者に問い合わせてください。 ユーザー名が見つかりません。 _________________________________ とエラー表示が返ってきます。 また各サーバーのhostsファイルは以下の通りです。 Samba1 (ver3.0) /etc/hosts 127.0.0.1 localhost.localdomain samba1.group01.localhost samba1 Samba2 (2.2.3a) /etc/hosts 127.0.0.1 localhost.localdomain localhost 以上です。 アドバイスよろしくお願いいたします。
- f_attck
- ベストアンサー率33% (40/118)
#1です。 Samba2(2.2.3a)側にwinbindの設定は無しでしょうか? あと、アクセスできない場合にどんなメッセージが出ますか? 無しでしょうか? メッセージ無しであれば、etherealとかでsambaのパケットを 拾ってエラー内容を見れますか?
補足
素早い回答に、お答えが遅れましてすいません。 Samba2(2.2.3a)には、winbindの設定はありません。 接続できないWindowsXPから、Samba2にアクセスしたときのメッセージは、 以下の通りです。 _________________________________ \\Localhostにアクセスできません。このネットワークリソースを使用するアクセス許可がない可能性があります。アクセス許可があるかどうかこのサーバーの管理者に問い合わせてください。 ネットワークに重複した名前があるため接続されませんでした。コントロールパネルのシステムでコンピューター名を変更して再実行してください。 _________________________________ また、WindowsXPのネットワークコンピューターの一覧中にあるSamba1、Samba2が属するワークグループ内のSamba2を右クイックしてプロパティーを表示させると、以下のエラーメッセージがかえってきます。 ______________________________________________________________ サーバーLocalhostはリモート要求を受け付けません。 _______________________________ 同じワークグループ内のSamba1のプロパティーを表示させれば、ワークグループ名やコンピューター名が表示され、アクセスすればファイルが加工できます。 Samba1、Samba2には、おなじユーザーを登録し、ドメインに参加していないWindowsXPからは、両方のサーバーのファイルにアクセス可能です。 なお、\\Localhost とは、たぶん、Samba2の hosts ファイル中に 127.0.0.1 Localhost とだけ記載があるため、それを拾ってきていると考えています。 参考になるメッセージはあるでしょうか。 よろしくお願いいたします。
- f_attck
- ベストアンサー率33% (40/118)
sambaのconfigのドメインとワークグループの設定が 挙動の差になっているのでは?
補足
早速のアドバイスありがとうございます。 smb.confgの[global]部分だけを並べてみます。ご指摘の差はありそうでしょうか。 Samba1(ver3.0) [global] workgroup = group01 server string = Samba1 dos charset = CP932 unix charset = UTF-8 display charset = UFT-8 map to guest = Bad User cups options = raw max log size = 50 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = no #============================ Share Definitions ============================== idmap uid = 16777216-33554431 idmap gid = 16777216-33554431 template shell = /bin/false password server = None username map = /etc/samba/smbusers winbind use default domain = no Samba2(2.2.3a) [global] coding system = euc client code page = 932 workgroup = group01 server string = Samba2 encrypt passwords = Yes obey pam restrictions = Yes pam password change = Yes passwd program = /usr/bin/passwd %u passwd chat = *New*password* %n\n *Retype*new*password* %n\n *passwd:*all*authentication*tokens*updated*successfully* unix password sync = Yes log file = /var/log/samba/%m.log max log size = 0 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 dns proxy = No printing = lprng veto files = /.??*/*.eml/*.nws/riched20.dll/httpodbc.dll/
お礼
返答が大変遅れましたこと、すいませんでした。出張と、断片的な対応とくるくる変わるサーバーからの挙動。統一的に理解できず、全面解決には至っていませんが、一応アクセス可能となりました。 変更点は、ご指摘いただきましたsambaサーバーのlocalhostだったドメイン名とサーバー名をオリジナル(samba2)に変更しました。結果、sambaサーバーがドメインサーバー(?)を探し回り、xwindowの立ち上がりが完全にできない状態になりました。大きな支障とならないため、現状のままで、xwindowは使っていません。 一方Windowsクライアントのhostsファイルに、 10.10.11.4 samba2 を追記した結果、windowsクライアントから、 \\samba2 にアクセスは可能となりました。\\10.10.11.4 と直接ipアドレスを指定したアクセスはこれまで同様に不可です。 windowsクライアントから、ワークグループ内のsamba2を探しに行くと、samba2が見えるクライアントと、見えないクライアントが混在します。 アドバイスいただいたetherealのインストールがエラーを出してできず、パケットのキャプチャーができていません。 sambaサーバーの、/var/log/sambaに、windowsマシンごとのlogファイルが残されていました。一応転記しておきます。 read_data: read failure for 4. Error = No route to host これまでのアドバイスで、ホスト名に問題がありそうなことがわかり稚拙な対応ながら一応の解決をつきましたことありがとうございました。 パケットのキャプチャーや、logファイルの解析など、問題解決の基本的な手法を教えていただき、自分のスキルが少しだけ上がった気がします。 最後に長らくご指摘いただき 問題解決に至ったこと ありがとうございました。