I used my bridgeport mill to do a # of them, works well. I didn't use a tube clamp, which would make it work better. Roughing end mills seem to work best. I've found used bridgeports from $500 to $1500, ideally you want one that comes with tooling. They are easy to learn how to use, and you'll find a bunch of other stuff to make with it.
Otherwise tube coping machines (belt sander style) work great, you might be able to find a used one for a good price.
i use my mill for complex notches. Works great if you have a vice that can rotate on the table. The downside is having the mill in an area where you can swing around a full stick if needed. I still use hole saws for the notches with the arbor in a 3/4" collet in the mill.