[1017] in linux-net channel archive

home help back first fref pref prev next nref lref last post

Broadcasts while using dummy interfaces

daemon@ATHENA.MIT.EDU (Bill Dyess)
Thu Aug 31 02:24:59 1995

Date: Wed, 30 Aug 1995 11:56:24 -0500 (CDT)
From: Bill Dyess <Bill@Dyess.com>
To: linux-net@vger.rutgers.edu
In-Reply-To: <199508121227.OAA05024@hera.cuci.nl>

Recently I've been using several dummy interfaces to manage several 
domain names from one box.  Everything is fine except, for some reason,
broadcast addresses don't work.  I'm using kernel version 1.2.13.

The symptom is that nmbd (part of samba) isn't working.  nmbd 
broadcasts a udp packet on startup to find a master browser, and then 
communicates with it directly from then on.  Every so often it has to 
refind the master browser (presumably when the master goes down), which
precludes me from starting nmbd before loading the dummy modules and
calling it fixed.

Watching with strace, it sends the packet and gets a response from itself 
on one of the dummy interfaces:

sendto(5, "b\376\1\20\0\1\0\0\0\0\0\0 FDEGE"..., 50, 0, {sin_family=AF_INET, sin_port=htons(137), sin_addr=inet_addr("204.49.60.255")}, 16) = 50
time(NULL)                              = 809799109
select(255, [5], NULL, NULL, {1, 0})    = 1 (in [5], left {1, 0})
recvfrom(5, "b\376\1\20\0\1\0\0\0\0\0\0 FDEGE"..., 1024, 0, {sin_family=AF_INET, sin_port=htons(137), sin_addr=inet_addr("204.49.60.150")}, [16]) = 50

204.49.60.150 is a dummy interface.  Watching the net with tcpdump,
nothing escapes my machine.

if I remove the dummy interfaces, later in the same trace output:

sendto(5, "dv\1\20\0\1\0\0\0\0\0\0 FDEGEPCN"..., 50, 0, {sin_family=AF_INET, sin_port=htons(137), sin_addr=inet_addr("204.49.60.255")}, 16) = 50
time(NULL)                              = 809799369
select(255, [5], NULL, NULL, {1, 0})    = 1 (in [5], left {1, 0})
recvfrom(5, "dv\1\20\0\1\0\0\0\0\0\0 FDEGEPCN"..., 1024, 0, {sin_family=AF_INET, sin_port=htons(137), sin_addr=inet_addr("204.49.60.4")}, [16]) = 50
time(NULL)                              = 809799369
time(NULL)                              = 809799369
time(NULL)                              = 809799369
select(255, [5], NULL, NULL, {1, 0})    = 1 (in [5], left {1, 0})
recvfrom(5, "dv\205\0\0\0\0\1\0\0\0\0 FDEGEPC"..., 1024, 0, {sin_family=AF_INET, sin_port=htons(137), sin_addr=inet_addr("204.49.60.16")}, [16]) = 62
time(NULL)                              = 809799369
write(4, "08/30/95 11:16:09 New master bro"..., 73) = 73
time(NULL)                              = 809799369
time(NULL)                              = 809799369
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 6
sendto(6, "\21\2$\303\3141<\4\0\212\0\307\0"..., 213, 0, {sin_family=AF_INET, sin_port=htons(138), sin_addr=inet_addr("204.49.60.16")}, 16) = 213
close(6)                                = 0

204.49.60.4 is my machine, 204.49.60.16 is current master browser.  
In other words, if I remove the dummy interfaces, it works, if I leave
them in, it doesn't.

I don't know if I'm configuring something wrong, samba has a bug, the
kernel has a bug, or I have a bug and am seeing things.  Any ideas on
how to get this working?

--Bill

home help back first fref pref prev next nref lref last post