Hi there
How does sail differentiate between an in bound and out bound route?
Outbound is handled through the route panel. It is sensitive to dial patterns and it routes calls over the correct trunk based upon those patterns. There are a couple of exceptions which can subvert the route abstraction, these are aliased outbound dials (which seize the trunk directly) and trunk-preselect where a trunk is deliberately seized by prepending the dialstring with a two digit code (defined in the trunk).
Inbound is handled through the trunk structure (usually through a DiD). There are essentially three inbound pathways; the open inbound route (which is used if the system is in an OPEN state), the closed inbound route (which is used if the system is in a CLOSED state) and the natural route which is used during extension-to-extension dialing and also by privileged siblings. The natural route cannot be altered or influenced except by natural routings such as call forwards, DNDs and so forth.
also on the trunk screen the two text boxes on the bottom the left one is for what? the right one is for what?
I assume you mean the peer and user entries you see when when you clcik to edit a trunk. These are the sip.conf (or iax.conf) peer and user entries which SAIL has generated for you. You may freely modify these entries to suit particular circumstances but in most cases they should just work.
an alias can be marked as a ring group but where is it hooked to an inbound route?
In the inbound route drop-down menu. By convention, you should give aliases numeric names (keys - 4 digit). The reason for this is that you can then test them by the simple expedient of dialing them.

Full info on trunk fields and what they do can be found here...
http://www.selintra.com/docs/cgi-bin/view/Main/DocChapter096and for routes...
http://www.selintra.com/docs/cgi-bin/view/Main/DocChapter112Kind Regards
S
Kind Regards
S