Я сумел поставить в настройках виртуальной машины вместо NAT, сетевой мост. Но я думаю что сейчас я написал чушь, которую вы не поймете)
Да, именно её )
Ты можешь быть за NAT'ом своего провайдера, точно так же,
как твоя виртуалка находится за NAT'ом виртуальной сети.
Чтобы определить это используй утилиту traceroute (для Linux) или tracert (для Windows)
Утилита служит для отображения пути следования запроса к серверу.
Можешь указать, например, DNS google - 8.8.8.8 (легко запомнить)
traceroute 8.8.8.8
У тебя будут показаны этапы прохождения запроса.
Первым идёт запрос к твоему роутеру, потом к роутеру провайдера и так далее
Если запрос под номером 2 идёт к внешнему IP, значит твой провайдер выдаёт тебе белый IP.
Если же 2 запрос идёт на адрес, который входит в следующие под сети (10.0.0.0 — 10.255.255.255, 100.64.0.0 — 100.127.255.255, 172.16.0.0 — 172.31.255.255, 192.168.0.0 — 192.168.255.255),скорее всего ты за NAT'ом провайдера.
А перенаправление это просто нужно открыть какой либо порт? Просто я возился с njrat чтобы был постоянный ip и тому подобное. Но не смог его все таки открыть.
Мало того, что он должен быть открытым, так он ещё должен знать на какой порт перенаправлять трафик.
То есть ты должен узнать IP компьютера, на котором слушается ответ этого njrat (например это 192.168.1.100).
И указать в настройках роутера, что, если идёт трафик для порта условно 11223, то его нужно направлять на компьютер с IP 192.168.1.100.
Обычно этот параметр называется PortForwarding или перенаправление портов.
Там указывается, какой порт слушать и на какой компьютер его перенаправлять.
А этот порт ты должен был зашить в njrat, при его создании.
Там же должен быть указан и внешний - белый IP твоего роутера.