Date: Thu, 29 Sep 2005 22:07:54 -0700 From: Josh Carroll <josh.carroll@gmail.com> To: freebsd-current@freebsd.org Subject: [SOLVED] Re: UDP multicast packets not seen on listening interface in BETA5 Message-ID: <8cb6106e0509292207s45016dbjf67801ddef50a0a1@mail.gmail.com> In-Reply-To: <8cb6106e0509292124u44520623l4ee770576f2a80f8@mail.gmail.com> References: <8cb6106e0509290919177de1c4@mail.gmail.com> <20050929221437.CCAFA16A420@hub.freebsd.org> <8cb6106e0509292124u44520623l4ee770576f2a80f8@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I'm sorry for so many replies to my own thread here, but I figured out my problem. You guys were right, I was not properly joining the multicast group. The packets were binding to my default IP instead of 192.168.1.1. Doing the following with pf fixed it: nat on $ext_if from any to 224.0.0.0/8 -> 192.168.1.1 I don't really understand why this wasn't necessary in 5.4 and previous 6.0 BETAs, but I'm glad it's working. I tried changing the code from: thishost.sin_addr.s_addr =3D INADDR_ANY; to: inet_aton("192.168.1.1", &local_addr); server.sin_addr.s_addr =3D local_addr.s_addr; Where 192.168.1.1 is one of the aliased IPs on fxp0, but when I try to run the code, I get "Permission denied" from sendto(), even with pf disabled. Ideally, I'd like to update the code to search the local interfaces with SIOCGIFCONF and use that IP (if available), but testing it with my IP hard-coded doesn't seem to work. But debugging my code is outside the scope of this mailing list. :) Thanks for the help and getting me pointed in the right direction. I'm ok with nat'ing the packets for now to make it work. I'll debug things myself and see if I can't get it to use the right source address itself. Josh
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8cb6106e0509292207s45016dbjf67801ddef50a0a1>