Identify player in network game

Is there some kind of id that identifies a player once they join a game?

and does it stay the same? as viewID changes

You can use Network.Connections, it is a array of network players. So, to make a list of players use:
NetworkPlayer playersInGame;
Or you could convert this to a generic list.

As for your second question, I am not sure if the viewID changes, but typically the GUID, and IP stay the same, until the client reconnects. What you could do is make debug.logs to make check if they change over the course of several levels/server/builds.

Hope this helps!