You set up replication through ravendb. All it is is a document with a pointer to your replica.
When client connects to the server it will get ALL the servers that replicate from your given server.
So in 2 server master-master setup you have
raven1 points to raven2
raven2 points to raven1
Let's say your client has raven1 as connection string. As soon as it connects to raven1 it will get information that raven1 replicates to raven2. At that point that information is cached. If you take your client down and raven1 down and then bring client up it will still know that raven2 was available and it will connect to it. So as long as you've connected once to all running replicas your client will be aware of all of them.
Now, if you do make changes to server infrastructure then you do need to update things because it can't magically know where you moved your servers. You can obviously mitigate it by using dns entries like raven1/raven2/etc and then for replication pointing to
http://raven1 and
http://raven2. Then IPs are irrelevant and you can switch where raven runs as long as dns entries are the same.
ReadFromAllServers is a client failover option. There are no server settings you need to do for it. It just means that your client will try to read from all servers to distribute the load. If any of the server replicas go down client will ignore them, if they come back up client will use them again. Raven is intelligent when it comes to failover.