Acredito que o problema é o fato de que você está tentando acessar serviços de um computador que está por trás de um NAT segundo .
Para começar, o servidor está dentro do pool NAT existente, atrás do roteador, o que não é um endereço roteável (192.168.99.x).
Seu roteador / modem deve ser configurado como bridge e seu servidor external IP deve ser o ip que o ISP lhe forneceu, então você pode ter o servidor NAT nos computadores internos. Em outras palavras, seu servidor linux se tornaria um roteador que não há nada de errado com isso. Muitos firmware de roteador de terceiros são Linux, na verdade eu tinha uma configuração semelhante quando eu estava aprendendo sobre o Linux. Meu roteador era um servidor linux: D
Como você está no caminho para usar o linux como um "roteador", eu recomendaria usar o Webmin para um CP para uma configuração muito mais fácil. link