OnCollision Not working can someone explain

hey im trying to write a script for a destruction type thing

but i need to attach a rigidbody then a object is hit by a ball (this object has a mech collider)

Im firing a ball from the player it has a rigidbody attached(obviously)

but when it hits an object with my script attached that has

onCollisionenter and then attaches a rigidbody and also does other stuff

but on collision enter doesnt get called

also i tryed adding a rigidbody on the object that the ball is hitting and set it to kinematic and onCollision got called (couldnt attach rigidbody cause it already had one)

but for what im doing i CANT have a rigidbody with kinematic checked for the object that the ball is hitting.

SO IF someone could explain whats happening that would be great becasue i though this should have worked (i have been using unity for quite a while so im not a complete noob. well i thought i wasnt)

sorry for any spelling mistakes i wrote this quickly

~Scott

Perhaps attach a child object with a kinematic rigidbody and use that for the collisions