1. Since the last update, the Rust's server browser is trying to query my server using the main server machine's IP instead of the assigned (and bound) server IP. Because of this, we're not being displayed in the list.

    Anyone else having the same issue running Linux?
     
  2. Yes, we have the same problem.
     
  3. @BigWorld Thanks for confirming, thought it was machine related.
     
  4. something to do with facepunch.steamworks im sure
     
  5. explain it in a bit more details u could always set the server.ip to 0.0.0.0 that will reset ur IP and Enables it to show again on the rust list its not really recommend to set a different IP here.
     
  6. Wulf

    Wulf Community Admin

    0.0.0.0 doesn’t reset anything, that just means to bind to whatever IP address the machine has as the primary IP. If a machine has multiple network adapters or IP addresses, ou would generally not want to use that. 0.0.0.0 is pretty much only useful for machines behind a router where the local IP address may change.
     
  7. I don't see how using a failover IP is not recommended. I do in fact use the same IP for all my servers but said IP is just an addon or failover, and since the last update regardless of what is bound to the process the server list still pulls the machines IP.

    I use a failover IP to make it easier for me to transfer game servers in and out of clusters as well as within a cluster when load distribution is needed. Using the machines IP will mean I would eventually have to change the game servers IP which means it would then fall off players history/favorite tab. With a failover I can transfer it machine to machine within seconds. See the point now?
     
  8. left me kinda qlueless really haha maybe cuz of the lack of technical english on my side perhaps
     
  9. Here is what's happening at a more technical level.

    https://i.imgur.com/Q5xXGTw.png

    On the right is my server configured to use OVH's failover IP properly. On the left is Wireshark loading packet captures taken off the wire on my dedicated OVH system. Just like the thread states, the steam master server is telling game clients to query the incorrect IP address.

    At first I suspected Facepunch.Steamworks or SteamAPI_Init being called incorrectly in Rust, but after spending the weekend reversing that, I don't believe either of those are at fault. I suspect this is either a change in Steam's API that hasn't been accounted for, or a bug on Steam's side. What is happening is Steam is using the IP address the server connects from to communicate with Steamworks as the server IP. When, why or how is unclear. It impacts both Linux and Windows. Though anecdotally it seems to impact Windows randomly, where sometimes it works and sometimes it doesn't. So I'm suspecting this may be a bug inside of the Steamworks native libraries on the Steam side maybe.

    So far however, on Linux I was able to create a successful workaround that seems to have resolve the issue for now.

    Code:
    [email protected]:~# iptables -t nat -A POSTROUTING --destination 0.0.0.0/0 -j SNAT --to 147.135.3.86
    [email protected]:~# iptables -t nat -nv -L POSTROUTING
    Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
     pkts bytes target     prot opt in     out     source               destination
     2769  183K SNAT       all  --  *      *       0.0.0.0/0            0.0.0.0/0            to:147.135.3.86
    
    This is forcing my Linux server to rewrite the source IP address to my failover IP. Unfortunately, on OVH I cannot just simply set my route to use that as the source IP because the failover IP is a /32 routed to my main IP.
     
  10. @Diametric That's more structured than my jerry rig ;)
     
  11. Is not it easier to change the primary ip address in /etc/network/interfaces ?
     
  12. Unfortunately no, because in my case, and most of us using OVH, the failover IP is a /32. It's not part of the same network the default router is, so by changing the default IP to that, you can no longer reach the gateway.

    Additionally, there are numerous people using multiple failover IPs for multiple servers on the box, which the problem would still exist for.
     
  13. @BigWorld Would defeat the purpose of a failover ;)
     
  14. Hi, I apologize for the bump but this is the only thread I found regarding this issue.

    I am running into this issue as well. I do have a work-around related to my firewall but that is inconsistent and I'd prefer if the `server.ip` command worked as intended with the Valve Master Server list.

    Does anybody know if this issue has been reported to the Rust development team? Is there also a reasoning behind this change back in February. From my understanding, the `server.ip` command is basically useless now with the Valve Master Server list.

    Thank you!
     
  15. @gamemann Are you using a failover IP as your Rust servers main IP?
     
  16. It has been. Facepunch believes this is a Steam issue and not a Rust issue. For Windows I have no workarounds, for Linux there are two possible workarounds.

    The first is if you only have 1 failover IP and use all your rust servers on it, you can create an SNAT rule forcing all outbound traffic to use that IP address. You can see that above in my previous post.

    The second is to use network namespaces. This will allow you to use any arbitrary number of IP addresses as your Rust server IP. So if you have 3 servers running on a dedicated box and all 3 each have their own IP, this is the way to go. It's also significantly more complicated.

    Network namespaces - Unweaving the web

    Is a decent write-up on how to utilize it. Linux allows you to create virtual namespaces with independent network settings, and then forcibly have an application use that as its network stack instead of the default. This makes the Rust server completely unaware of anything but the network settings within the namespace, causing its traffic to be properly tagged with the source IP address of your choosing.
     
  17. I've made a plugin that checks if the server is in the list, then auto restarts if not until it does show up. Ran into a problem with the server freezing for about 10 minutes when restarting though, so now I need to make a workaround for my workaround :(
     
  18. Are people still having this problem, is the workaround currently on Windows to just use the Primary IPv4 address?

    I'm facing the same problem after setup of Failover IP address with Ovh, using the main IP and everything works, however once you switch it over, it no longer appears in the server list.
     
  19. yes, use the primary ip
     
  20. Hi,

    Have any of you tested this solution?
    r/playrust - Rust server are not showing up on Rust Server List and making our server die

    Put this in your startup and it shouldn't disappear again

    rd /s /q "%rustpath%\appcache"
    rd /s /q "%rustpath%\config"
    rd /s /q "%rustpath%\logs"
    rd /s /q "%rustpath%\userdata"

    Would that be correct?

    Start.bat:
    rd /s /q "%rustfolder%\appcache" rd /s /q "%rustfolder%\config" rd /s /q "%rustfolder%\11\logs" rd /s /q "%rustfolder%\userdata" @echo off cls :start echo Starting server... start /AFFINITY 54 RustDedicated.exe -batchmode ^ +rcon.ip x.x.x.x ^ +rcon.port xxxx ^ +server.ip x.x.x.x ^ +server.port xxxx ^ +server.identity "myserver" ^ +server.globalchat true ^ +rcon.password "xxxxx" echo. echo Restarting server... timeout /t 10 echo.