When you say:
$ sqlplus system/manager@orcl
you are using sql*net to get to the database.
When you say:
$ sqlplus system/manager
you are bypassing sql*net and going directly to the database. In this case, you must make sure the $ORACLE_SID is set to the correct instance name.