Re: [ntp:questions] Multicast question
Danny Mayer wrote: Jan Ceuleers wrote: Martin Burnicki wrote: I'd expect that either the kernel routed multicast packets to all interfaces (isn't that what routers do with multicasts, contrarily to broadcasts?), or the application would send an individual packet on each interface. Routers have to be told (by means of multicast protocols such as IGMP) which interfaces to replicate multicast packets onto. That assumes that there's a router involved. If it's just to the local LAN then you may not have a router able to route to the other interfaces. In this case it almost certainly have to be done on the local server sending the packets. Danny Well, when you install/enable multicast routing software on the local machine this machine becomes a multicast router (kernel may have to be compiled with the right flags on some systems). Thus the local machine will be NTP server and multicast router.As I said you need the multicast routing functionality in order to be able to find the interfaces where you need to replicate to packets to. Frank ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
Frank, thanks for that crash course on the details of multicasting which makes things much clearer. Martin -- Martin Burnicki Meinberg Funkuhren Bad Pyrmont Germany ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
Danny Mayer wrote: John Vossler wrote: Greetings, I have a new system running Solaris 10 set up as an NTP server. IT is synchronizing correctly but I cannot get it to multicast on any interface except the systems primary Ethernet interface, bge0. I need it to multicast on interfaces bge1-bge3 and ce0 - ce7. Client systems reside on the network segments on these other interfaces. Anyone have any suggestions on getting the server to multicast on these other interfaces? John Are you talking about outgoing packets to a multicast address? I think that there may be some bugs in that area since the addresses are limited and choosing an outgoing address becomes an issue and it will only send it out on one address. I'm not sure if it's possible to set up a server (at least not easily) to send via different interfaces. It is. But on a multihomed server the server must have multicast routing functionality. Either this is already provided in the kernel or you need to run an mcast-routing daemon like mrouted, zebra or others. The ntpd setup is not different on multihomed hosts. Just the multicast routing must be working. To do this correctly you need to be able to set up a different multicast address to use and associate it with a particular server address for each interface. NO - see above. The only way that I can think of to accomplish this is to be able to specify a specific binding address in the config file. We would have to add that as an optional parameter to the broadcast directive. not needed. Danny Frank ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
Martin Burnicki wrote: Danny Mayer wrote: John Vossler wrote: [...] My initial reaction to this issue was to determine if there was an OS (Solaris) directive to include the multicast for other interfaces in the group as reported by netstat -g. Or a method to specify the multicast interfaces in the ntp.conf file (apparently not, or not easily). No, and certainly it has not been implemented in NTP. If ntpd has been configured to send multicasts, shouldn't it by default send multicasts on every interface it actually uses? No - replicating Mcast packets mustn't be the responsibility of the application. That is the task of the multicast routing protocol software. We really don't have to put all network software into ntpd :-). I had expected ntpd would already do so. not needed. Does someone know how this is handled by other protocols using multicast, e.g. SLP or mDNS? Martin Frank ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
Frank Kardel wrote: Danny Mayer wrote: John Vossler wrote: Greetings, I have a new system running Solaris 10 set up as an NTP server. IT is synchronizing correctly but I cannot get it to multicast on any interface except the systems primary Ethernet interface, bge0. I need it to multicast on interfaces bge1-bge3 and ce0 - ce7. Client systems reside on the network segments on these other interfaces. Anyone have any suggestions on getting the server to multicast on these other interfaces? John Are you talking about outgoing packets to a multicast address? I think that there may be some bugs in that area since the addresses are limited and choosing an outgoing address becomes an issue and it will only send it out on one address. I'm not sure if it's possible to set up a server (at least not easily) to send via different interfaces. It is. But on a multihomed server the server must have multicast routing functionality. Either this is already provided in the kernel or you need to run an mcast-routing daemon like mrouted, zebra or others. The ntpd setup is not different on multihomed hosts. Just the multicast routing must be working. Even if that's true, we don't know apriori whether or not that is the *intent* of the sysop. Most times you are likely to have a server with two NICs but one is used as an outbound interface to the external servers and the other NIC is used to multicast packets to the LAN. NTPD has no way of knowing that. I assume that something like mrouted can be configured in some way to know how to send those packets. Note that such a configuration is likely to introduce additional delays and jitter to the outgoing multicast packet. To do this correctly you need to be able to set up a different multicast address to use and associate it with a particular server address for each interface. NO - see above. Yes, it turns out you can do this from within ntpd but you have to program this. Danny The only way that I can think of to accomplish this is to be able to specify a specific binding address in the config file. We would have to add that as an optional parameter to the broadcast directive. not needed. Danny Frank ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
Martin Burnicki wrote: I'd expect that either the kernel routed multicast packets to all interfaces (isn't that what routers do with multicasts, contrarily to broadcasts?), or the application would send an individual packet on each interface. Routers have to be told (by means of multicast protocols such as IGMP) which interfaces to replicate multicast packets onto. Jan ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions
Re: [ntp:questions] Multicast question
John Vossler wrote: Danny, You are correct, I am talking about outgoing multicast intended for client systems in our environment. I not certain I completely understand what you mean about associating interfaces with multicast addresses. It seems like you are inferring that I would need to define a unique multicast address for each interface on the NTP server. Am I understanding this correctly? Yes. My original intent was to have the NTP server multicast 224.0.1.1 on all 12 interfaces, and have the clients all listen for the same multicast address. I don't believe it can be done that way but I'd have to check the multicast protocol to be sure. As far as I know you have to send out multiple packets, one for each interface, and you have to do that explicitly. You certainly cannot do that today in NTP since it only uses one interface to send out to the multicast address. My ntp.conf file on the server just has the single broadcast line broadcast 224.0.1.1 ttl 4 it does not appear to attached to any specific interface; thus your comment about adding a parameter. Correct. That does not exist today. My initial reaction to this issue was to determine if there was an OS (Solaris) directive to include the multicast for other interfaces in the group as reported by netstat -g. Or a method to specify the multicast interfaces in the ntp.conf file (apparently not, or not easily). No, and certainly it has not been implemented in NTP. Is it possible to accomplish what I intended? Or is there a method to specify the single interface that ntp is multicasting on? I might be able to get the environment in sync if I could multicast on just ce3 instead of bge0; the interface it is using currently. We'd have to add that to the code. It does not exist today. Please submit a bug report for an enhancement to add the option so it won't get forgotten. One note. I am running the ntp code shipped with Solaris 10 which is v3. John We cannot do anything with V3 and we would certainly not touch that code. V3 was retired a long time ago. Upgrade to V42.4 at least, you won't be sorry. Danny ___ questions mailing list questions@lists.ntp.org https://lists.ntp.org/mailman/listinfo/questions