yes, it needs very different skills to beat the opponent when he is at the volley.
1st thing : usually, the best time to pass your opponent is when he's running to the net. Depending of the situation, use the short shot or the acceleration, and try to send the ball as crossed as possible !
If you keep a close look at your opponent, and have good reflexes, you should be able to pass him often in this situation.
2nd: if you didn't pass him on the 1st shot, so now, he's at the volley, and he's very hard
to pass, but it's still possible. Although, most of time, you'll want to make him volley 1 or 2 times, then lob him with a good crossed shot. Use defensive or attack lob depending of the situation. With the attack lob, you could do a winner lob if your opponent was very close of the net, or in a phase moving a bit closer to the net.
Anyway, if your lob is not a winner, he'll be far of the net, on the side of the court, giving an huge gap on the other side to shoot your passing in. Here again, use wisely the short shot or the acceleration, depending of the situation.
3rd, on service return : there, it's a bit different. Don't try to do acceleration; it can do a winner if you hit along the side line, but often, it'll give an higher ball to your opponent, and it'll be easier for him to volley. The best is to return a short shot, to make him hit a low volley, then you can try to pass him on the 2nd shot, but it's still not easy. On 3rd shot, make him volley one more time if u can, using the short shot, and after just go to tactic #2 by lobbing him.
So don't forget, use the short shot to make your opponent hit lower volley. Usually (but not every time), he'll make a volley easier for you to get.
Ok, I hope these little tips will help you to beat these damn volleyers !
Good luck !