Olá, Ilton!
Quando você está trabalhando com Docker, o Docker cria sua própria rede interna para os contêineres. Nesse caso, a rede interna do Docker está usando o intervalo de endereços 172.17.0.0/16. Quando um contêiner Docker tenta se comunicar com um endereço fora dessa rede interna, o Docker realiza uma operação de NAT (Network Address Translation) para traduzir o endereço interno do contêiner para um endereço que possa ser reconhecido na rede externa.
No exemplo da aula, o contêiner Docker está tentando se comunicar com um Raspberry Pi na rede local, que está usando o intervalo de endereços 192.168.1.0/24. O Docker realiza o NAT do endereço do contêiner (172.17.0.2) para o endereço do host Docker na rede local (192.168.1.100).
Agora, aqui está a parte que pode estar causando confusão: embora o NAT geralmente seja associado a roteadores, neste caso, o NAT está ocorrendo dentro do host Docker, não no roteador. Isso ocorre porque o Docker está gerenciando sua própria rede interna e precisa traduzir os endereços dessa rede interna para a rede externa.
Então, para responder a sua pergunta, neste caso específico, o NAT está ocorrendo dentro do Docker, e não no roteador. E, como o contêiner Docker e o Raspberry Pi estão na mesma rede local (graças ao NAT do Docker), não é necessário passar pelo roteador para se comunicar.
Espero ter ajudado e bons estudos!