I don't understand the concept of a 'bond rally'. Let me give you an example:
Let's say I buy a 5 year bond at 5%. No matter what's going on in the stock or bond world, I can ignore it, because it has no effect on my getting my 5% return.
So when people say 'bond rally', does it mean a bunch of new bonds are available for 6%?
To a child: "Your bonds are too small. Everyone wants big bonds, not yours. You lose."
Assuming a $10,000 bond, a "5 year bond at 5%" pays $500/year for 5 years, paying you a total of $12,500 to you over 5 years. If "new bonds are available for 6%", those pay $600/year for 5 years, so you'll get repaid $13,000 over that time.
Everyone likes $13,000 more than $12,500. They want 30% over 5 years. What to do?
Sell your $10,000 bond for the discount price of $9,600. The person buying it still gets $12,500 at the end... which is now 30% more than the $9,600 they paid. Now they don't care if they pay $9600 and get 30% or pay $10,000 and get 30%.
I have rounded off the numbers and ignored complex time value considerations (the $500 vs $600 annual interest), but that's the basic idea.