Discussion:
[Samba] Samba not seeing any interfaces
Yan Seiner
2008-01-05 20:18:06 UTC
Permalink
I've built samba for an embedded mips platform. Since this is an
embedded platform, it's possible that some critical file that samba
needs is missing but stracing the daemons doesn't reveal anything strange.

It's running 2.4.34 kernel.

Samba is failing to find any interfaces.

[2000/01/02 10:55:01, 3] nmbd/nmbd.c:main(759)
Opening sockets 137
[2000/01/02 10:55:01, 10] lib/util_sock.c:open_socket_in(839)
bind succeeded on port 137
[2000/01/02 10:55:01, 10] lib/util_sock.c:open_socket_in(839)
bind succeeded on port 138
[2000/01/02 10:55:01, 5] lib/util_sock.c:print_socket_options(206)
socket option SO_KEEPALIVE = 0

.... (bunch of print stuff).....

[2000/01/02 10:55:01, 3] nmbd/nmbd.c:open_sockets(615)
open_sockets: Broadcast sockets opened.
[2000/01/02 10:55:01, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:01, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:01, 0] nmbd/nmbd_subnetdb.c:create_subnets(190)
create_subnets: No local interfaces !
[2000/01/02 10:55:01, 0] nmbd/nmbd_subnetdb.c:create_subnets(191)
create_subnets: Waiting for an interface to appear ...
[2000/01/02 10:55:06, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:06, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:11, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:11, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:16, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199

and this repeats forever.

My smb.conf:

#======================= Global Settings
=====================================
[global]
syslog = 0
syslog only = yes
workgroup = seiner.lan
server string = OpenWrt Samba Server
max log size = 50
security = share
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
guest account = nobody
local master = yes
name resolve order = lmhosts hosts bcast
log file = /var/log/samba/log.smbd
# hosts allow = 127.
interfaces = 192.168.128.199 <=== I've tried eth0.1
192.168.0.0./255.255.0.0 eth* and probably some others
# bind interfaces only = false
# 192.168.1.1/255.255.255.0
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
Yan Seiner
2008-01-05 21:19:28 UTC
Permalink
Post by Yan Seiner
I've built samba for an embedded mips platform. Since this is an
embedded platform, it's possible that some critical file that samba
needs is missing but stracing the daemons doesn't reveal anything strange.
It's running 2.4.34 kernel.
Samba is failing to find any interfaces.
[2000/01/02 10:55:01, 3] nmbd/nmbd.c:main(759)
Opening sockets 137
[2000/01/02 10:55:01, 10] lib/util_sock.c:open_socket_in(839)
bind succeeded on port 137
[2000/01/02 10:55:01, 10] lib/util_sock.c:open_socket_in(839)
bind succeeded on port 138
[2000/01/02 10:55:01, 5] lib/util_sock.c:print_socket_options(206)
socket option SO_KEEPALIVE = 0
.... (bunch of print stuff).....
[2000/01/02 10:55:01, 3] nmbd/nmbd.c:open_sockets(615)
open_sockets: Broadcast sockets opened.
[2000/01/02 10:55:01, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:01, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:01, 0] nmbd/nmbd_subnetdb.c:create_subnets(190)
create_subnets: No local interfaces !
[2000/01/02 10:55:01, 0] nmbd/nmbd_subnetdb.c:create_subnets(191)
create_subnets: Waiting for an interface to appear ...
[2000/01/02 10:55:06, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:06, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:11, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
[2000/01/02 10:55:11, 0] lib/interface.c:load_interfaces(229)
WARNING: no network interfaces found
[2000/01/02 10:55:16, 2] lib/interface.c:interpret_interface(130)
can't determine netmask for 192.168.128.199
and this repeats forever.
#======================= Global Settings
=====================================
[global]
syslog = 0
syslog only = yes
workgroup = seiner.lan
server string = OpenWrt Samba Server
max log size = 50
security = share
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
guest account = nobody
local master = yes
name resolve order = lmhosts hosts bcast
log file = /var/log/samba/log.smbd
# hosts allow = 127.
interfaces = 192.168.128.199 <=== I've tried eth0.1
192.168.0.0./255.255.0.0 eth* and probably some others
# bind interfaces only = false
# 192.168.1.1/255.255.255.0
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
I added some debug lines to the interface.c routines.

It turns out that get_interfaces returns -1 - eventhough there is an
interfaces = line in smb.conf. From looking at the code, this is not
handled at all in interface.c.

[2008/01/05 15:11:46, 0] lib/interface.c:interpret_interface(108)
checking interface eth*
[2008/01/05 15:11:46, 0] lib/interface.c:interpret_interface(110)
checking for interface name
checking for DNS name
WARNING: no network interfaces found
found -1 interfaces


Any idea why the kernel wouldn't return any interfaces?

--Yan

Loading...