"Ehrlich" is about being honest, while "wirklich" is about being real. The difference in usage is practically the same as in English.
For example, someone can be real, but dishonest:
Er ist nicht ehrlich.
means "he is not honest", while
Er ist nicht wirklich.
would mean, that he's not real.
In the example you gave, "ehrlich?" also would literally translate to "honestly?", but it is used often in cases where the English would simply ask "really?". This not wrong, it also depends on the situation. In a philosophical way, "honestly?"/"ehrlich?" can be asked and answered in all cases, while "really?"/"wirklich?" can not always be answered/known.