Para obter um endereço IP dinâmico em sua LAN, simplesmente atribua seu endereço estaticamente dentro da sub-rede da LAN, mas fora dos intervalos de endereços IP configurados pelo servidor DHCP - ou seja, se seu intervalo de LAN é 192.268.0.0, 255.255.255.0, com um gateway de 192.168.0.1 e seu servidor DHCP está configurado para alocar endereços IP do intervalo 192.168.0.100 a 192.168.0.200, configure seu computador para usar 192.168.0.101, máscara de rede 255.255.255.0, gateway 192.168.0.1 - Para servidores de nomes, use 8.8.8.8 (nameservers Googles) ou 192.168.0.1 (a maioria dos roteadores domésticos também atua como nameservers) (Alternativamente, se você tiver um servidor DHCP sofisticado, poderá atribuir dinamicamente um endereço estático)
Obter um endereço IP acessível externamente é um pouco mais difícil, e, eu suspeito, o que você está procurando.
A maneira "correta" de fazer isso é perguntar ao seu ISP por um. Se eles não estão dispostos a obrigar, você pode encontrar um "Low End Box" / Virtual Server, configurar o OpenVPN em que, juntamente com o NAT, conecte sua rede a ele e, em seguida, use o endereço IP da caixa de fim de curso. Como alternativa, você pode encontrar um provedor de VPN que faça isso para você (mas não consegui encontrar um com uma pesquisa rápida no Google)
Uma alternativa seria mudar para o IPV6. Se o seu provedor não lhe der uma alocação IPv6 estática, você pode usar um serviço de encapsulamento IPV6 para obter um - a maior limitação aqui é que o lado do qual você está se conectando precisa falar também do IPV6.
Um provedor de DNS dinâmico é, como outros sugeriram, uma solução conveniente para muitos problemas de endereço IP estático (mas certamente não todos, por exemplo, trabalhando com locais com regras de firewall que você precisa passar)