End-hosts do not need to be configured for multicast; they can just use it. Multicast routing (PIM or DVMRP) is only needed between the routers.
Usually, multicast group joins are done dynamically, not statically. That is, you don't configure the OS with the groups you want to join – instead, the actual programs that would consume multicast traffic have to ask the OS to join the group they want. (And if there aren't any such programs, then what's the point of receiving multicast?)
(This is only needed to receive data. Hosts can send multicast without doing anything special.)
For example, if you were receiving an MPEG video stream, you'd use something like VLC to interpret the multicast data – therefore VLC asks the OS to join the group you specify, and the OS automatically sends the necessary IGMP or MLD packets. (This is done using the setsockopt() call with IP_ADD_MEMBERSHIP; widely documented elsewhere, such as TLDP.) Once VLC quits, the OS automatically leaves the group.
Tools like msend/mreceive could be used to send and receive a "test" multicast stream, or you could use e.g. Python sockets to temporarily join the group you want.