Between Viridian City and Pewter City
Route 2 but it is very rare.
It can be caught at Route 2.
in Pokemon soul silver catch it in route 36, route 37, and route 48. (Note that i don't know if it is the same for silver)
The Viridian Forest and I think Route 2
In Route 38.
No.
in Pokemon soul silver you can find it at route 36 or route 35
On route 34.
You get sneasel in Route 28 silver cave (Night)
Ditto is found at Route 34,Route 35 and Route 45
you can find 2 psychic pokemon on route 34 and 35: abra and drowzee.
You cannot get it in Pokemon Silver, but you can in SoulSilver or HeartGold. You have to go to Route 36.