[GH-ISSUE #1664] Discord Alert: Only use public IP #1296

Closed
opened 2026-02-27 02:56:21 +03:00 by kerem · 6 comments
Owner

Originally created by @robobenklein on GitHub (Oct 21, 2017).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1664

Originally assigned to: @dgibbs64 on GitHub.

github.com/GameServerManagers/LinuxGSM@8b163a61c4/lgsm/functions/alert_discord.sh (L42)

Test environment: TF2 on Ubuntu server.

When on a server with multiple interfaces, we need to set the ip variable so that the source engine knows where to bind the port, but that's a local network IP address. (192.168.X.X or whatever the network might be)

In the discord notification, it then uses the private IP address, meaning it's useless to have a gameserver tracker link there at all; nobody but the ones inside the network can even know what the address is.

Proposed workaround:

Allow custom variable to override ip variable.

Changes here:

"value": "[${ip}:${port}](https://www.gametracker.com/server_info/${ip}:${port})"

to

"value": "[${public_ip:-$ip}:${public_port:-$port}](https://www.gametracker.com/server_info/${public_ip:-$ip}:${public_port:-$port})"

Using public_ip and public_port if given allowing ip and port to be overridden if the router or network changes them in transit to the server.

I could submit a PR if needed, but this is such a small change I figured it wasn't that big a deal.

Originally created by @robobenklein on GitHub (Oct 21, 2017). Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/1664 Originally assigned to: @dgibbs64 on GitHub. https://github.com/GameServerManagers/LinuxGSM/blob/8b163a61c44f237ffb45fcb9cc4cd9cc237a73fd/lgsm/functions/alert_discord.sh#L42 Test environment: TF2 on Ubuntu server. When on a server with multiple interfaces, we need to set the `ip` variable so that the source engine knows where to bind the port, but that's a local network IP address. (192.168.X.X or whatever the network might be) In the discord notification, it then uses the private IP address, meaning it's useless to have a gameserver tracker link there at all; nobody but the ones inside the network can even know what the address is. ## Proposed workaround: Allow custom variable to override `ip` variable. Changes here: ``` "value": "[${ip}:${port}](https://www.gametracker.com/server_info/${ip}:${port})" ``` to ``` "value": "[${public_ip:-$ip}:${public_port:-$port}](https://www.gametracker.com/server_info/${public_ip:-$ip}:${public_port:-$port})" ``` Using `public_ip` and `public_port` if given allowing `ip` and `port` to be overridden if the router or network changes them in transit to the server. I could submit a PR if needed, but this is such a small change I figured it wasn't that big a deal.
Author
Owner

@dgibbs64 commented on GitHub (Oct 25, 2017):

I like this idea. Thanks

<!-- gh-comment-id:339394373 --> @dgibbs64 commented on GitHub (Oct 25, 2017): I like this idea. Thanks
Author
Owner

@gamersalpha commented on GitHub (Nov 6, 2017):

same problem

thanks

<!-- gh-comment-id:342275487 --> @gamersalpha commented on GitHub (Nov 6, 2017): same problem thanks
Author
Owner

@dgibbs64 commented on GitHub (Apr 8, 2018):

LinuxGSM now has an internet ip variable. I think I will set it to this instead

<!-- gh-comment-id:379575958 --> @dgibbs64 commented on GitHub (Apr 8, 2018): LinuxGSM now has an internet ip variable. I think I will set it to this instead
Author
Owner

@dgibbs64 commented on GitHub (Apr 8, 2018):

I will be altering the IP to use extip however some though does need to go in to all the possible variations of how IP addresses may change

<!-- gh-comment-id:379576549 --> @dgibbs64 commented on GitHub (Apr 8, 2018): I will be altering the IP to use extip however some though does need to go in to all the possible variations of how IP addresses may change
Author
Owner

@dgibbs64 commented on GitHub (Nov 23, 2018):

Updated this for other notifications as well

<!-- gh-comment-id:441241868 --> @dgibbs64 commented on GitHub (Nov 23, 2018): Updated this for other notifications as well
Author
Owner

@lock[bot] commented on GitHub (Nov 24, 2019):

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:557883670 --> @lock[bot] commented on GitHub (Nov 24, 2019): This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#1296
No description provided.