thijsvanloef / palworld-server-docker

A Docker Container to easily run a Palworld dedicated server.
https://hub.docker.com/r/thijsvanloef/palworld-server-docker
MIT License
2.41k stars 298 forks source link

Running in Kubernetes Connecting Through DNS, Can't Reconnect via Recent Servers #294

Closed gzukel closed 6 months ago

gzukel commented 7 months ago

Describe the bug

We have two servers running. One on a physical machine, the other running in Kubernetes through a network load balancer in AWS.

I can connect to my node world.palworld-servers.io but I can't re-connect through recent servers just gives me connection error. However if I put the dns again in direct connect it will connect right away.

For the one running on a physical machine with dedicated IP it re-connects just fine.

I wonder if its related to the traffic going through the load balancer in K8S because its a DNS and not IP and through AWS non dedicated IP's. The Load Balancer IP hasn't changed but I wonder if its porking it. Not sure any help here would be helpful.

gzukel commented 7 months ago

Sorry I'll add labels from now on. Thanks! I think this is a bug on the client side. I'm just curious any ideas on how to fix?

thijsvanloef commented 7 months ago

@gzukel don't worry about the labels! @Filipe-Souza If you have the time, could you shed some light on the issue?

gzukel commented 7 months ago

So I did some testing, I assigned a EIP to my NLB and I can connect to the NLB's EIP directly.I updated my DNS world.palworld-servers.io:8211 to point directly to the EIP of the NLB. you can connect by specifying the DNS or EIP in the direct connect bar. however, Still in recent servers it times out.

However, on our server that we run on a dedicated linux box just in docker compose the recent servers re-connect works just fine. So not sure whats going on.

My Settings:

  TZ: UTC
  PLAYERS: 48
  PORT: 8211
  PUID: 1000
  PGID: 1000
  MULTITHREADING: true
  COMMUNITY: true
  SERVER_NAME: "[PVP]3XDROP/2.5XWORK/3XITEM/5XEXP/2.5XCAP - world.palworld-servers.io:8211 - Public Test Server"
  SERVER_DESCRIPTION: This is a test server coming soon.
  SERVER_PASSWORD: ""
  ADMIN_PASSWORD: REMOVED
  UPDATE_ON_BOOT: true
  RCON_ENABLED: true
  RCON_PORT: 25575
  QUERY_PORT: 27015
  BACKUP_ENABLED: true
  DELETE_OLD_BACKUPS: false
  OLD_BACKUP_DAYS: 30
  BACKUP_CRON_EXPRESSION: 0 0 * * *
  AUTO_UPDATE_ENABLED: false
  AUTO_UPDATE_CRON_EXPRESSION: 0 * * * *
  AUTO_UPDATE_WARN_MINUTES: 30
  AUTO_REBOOT_ENABLED: false
  AUTO_REBOOT_WARN_MINUTES: 5
  AUTO_REBOOT_CRON_EXPRESSION: 0 0 * * *
  DIFFICULTY: None
  DAYTIME_SPEEDRATE: 1.000000
  NIGHTTIME_SPEEDRATE: 1.500000
  EXP_RATE: 5.000000
  PAL_CAPTURE_RATE: 2.500000
  PAL_SPAWN_NUM_RATE: 1.300000
  PAL_DAMAGE_RATE_ATTACK: 1.000000
  PAL_DAMAGE_RATE_DEFENSE: 1.000000
  PLAYER_DAMAGE_RATE_ATTACK: 1.000000
  PLAYER_DAMAGE_RATE_DEFENSE: 1.000000
  PLAYER_STOMACH_DECREASE_RATE: 0.900000
  PLAYER_STAMINA_DECREASE_RATE: 0.650000
  PLAYER_AUTO_HP_REGEN_RATE: 1.500000
  PLAYER_AUTO_HP_REGEN_RATE_IN_SLEEP: 3.000000
  PAL_STOMACH_DECREASE_RATE: 0.500000
  PAL_STAMINA_DECREASE_RATE: 0.000000
  PAL_AUTO_HP_REGEN_RATE: 1.000000
  PAL_AUTO_HP_REGEN_RATE_IN_SLEEP: 1.000000
  BUILD_OBJECT_DAMAGE_RATE: 1.000000
  BUILD_OBJECT_DETERIORATION_DAMAGE_RATE: 1.000000
  COLLECTION_DROP_RATE: 3.000000
  COLLECTION_OBJECT_HP_RATE: 1.000000
  COLLECTION_OBJECT_RESPAWN_SPEED_RATE: 5.000000
  ENEMY_DROP_ITEM_RATE: 3.000000
  DEATH_PENALTY: All
  ENABLE_PLAYER_TO_PLAYER_DAMAGE: true
  ENABLE_FRIENDLY_FIRE: false
  ENABLE_INVADER_ENEMY: true
  ACTIVE_UNKO: false
  ENABLE_AIM_ASSIST_PAD: true
  ENABLE_AIM_ASSIST_KEYBOARD: false
  DROP_ITEM_MAX_NUM: 3000
  DROP_ITEM_MAX_NUM_UNKO: 100
  BASE_CAMP_MAX_NUM: 128
  BASE_CAMP_WORKER_MAXNUM: 30
  DROP_ITEM_ALIVE_MAX_HOURS: 1.000000
  AUTO_RESET_GUILD_NO_ONLINE_PLAYERS: false
  AUTO_RESET_GUILD_TIME_NO_ONLINE_PLAYERS: 128.00000
  GUILD_PLAYER_MAX_NUM: 20
  PAL_EGG_DEFAULT_HATCHING_TIME: 1.00000
  WORK_SPEED_RATE: 2.500000
  IS_MULTIPLAY: true
  IS_PVP: true
  CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP: true
  ENABLE_NON_LOGIN_PENALTY: true
  ENABLE_FAST_TRAVEL: true
  IS_START_LOCATION_SELECT_BY_MAP: true
  EXIST_PLAYER_AFTER_LOGOUT: true
  ENABLE_DEFENSE_OTHER_GUILD_PLAYER: true
  COOP_PLAYER_MAX_NUM: 4
  REGION: NA
  USEAUTH: false
  BAN_LIST_URL: https://api.palworldgame.com/api/banlist.txt
gzukel commented 7 months ago

I fixed it fyi by setting public_ip to the dns

Filipe-Souza commented 7 months ago

I had this error too on some game clients, ended up guiding the users to just reconnect with the same data. I tought that was a game client issue only (happens when you using only IPv4 too, not only hostnames).