equivalence between くれる and もらう


そのお菓子を息子にくれますか？

そのお菓子を息子にもらえますか?

Apparently these sentences are equivalent, but as far as I know に marks the
subject who gives the object, I don't understand how do they have the same
meaning

Is there anything am I missing?




This くれる means "someone give something to someone", so the action is the other
side. そのお菓子を息子にくれますか? is translated as "Can you give the snack to my son?"

This もらう means "someone receive something from someone", so the action is
speakers' side. そのお菓子を息子にもらえますか? is translated as "Can I receive the snack
from my son?" but it is unnatural to say that to someone.

I think "そのお菓子を息子にくれませんか?", "そのお菓子を息子にください" are more common than
"そのお菓子を息子にくれますか？".

