Why can't I use/browse the internet while performing port scanning?

I am running the rolling release of Kali as a guest OS on windows through Virtualbox and dealing with the following problem...(which I believe is a result of misconfiguration of software)

I am currently trying to do 3 things (simultaneously)

  • test masscan
  • use Nload to observe masscan performance
  • browse the internet

Как следует из названия, моя интернет-производительность отсутствует, когда я пытаюсь сделать эти несколько вещей одновременно. Я также не могу пинговать Google тоже. Я читал эту статью https://www.cyberciti.biz/faq/linux-tcp-tuning/ о повышении производительности и следовал советам статей, но все еще страдаю от тех же симптомов. Что здесь происходит? Меня больше интересует понимание того, где искать решение, чем реальное решение (хотя я хочу решить эту проблему). Я пришел из окон Windows, поэтому я не уверен, где искать в Linux, чтобы начать решать эту проблему. Nload показывает мою пропускную способность 57,59 кбит / с, что далеко от моей пропускной способности. Почему эта пропускная способность такая низкая? Где я должен искать, чтобы определить, что неправильно настроено.

Также стоит отметить, что я могу с уверенностью сказать, что мое оборудование способно на большее, поскольку у меня есть 16-ядерная коробка с 48 гигабайтами оперативной памяти. 8 из которых посвящены этому конкретному случаю Кали.

Также стоит отметить, что когда я запускаю тест скорости с помощью инструмента поисковой системы Google, моя скорость загрузки составляет 141,1 Мбит / с, а скорость загрузки - 21,6 Мбит / с. Хотя это не то же самое, что моя ОС, но все же значительно лучше, чем результаты, которые я видел при использовании masscan. Выход Nload также соответствовал этим результатам во время тестирования. Эти последние наблюдения заставляют меня думать, что это неверная конфигурация программного обеспечения.

3 ответа

Решение

Вы, вероятно, исчерпали порты на вашем NAT, или, возможно, перегружаете таблицу сопоставления вашего NAT. Типичная настройка NAPT имеет только один общедоступный IP-адрес, поэтому она может использовать только TCP-порты 64Ki и UDP-порты 64Ki.

Даже если соединение TCP полностью закрыто, соединение переходит в состояние TIME_WAIT примерно на 2 минуты, чтобы убедиться, что 4-кортеж соединения не будет повторно использован для нового соединения, в то время как поздние пакеты из старого соединения могут все еще находиться в сеть. Такой инструмент, как masscan, вероятно, должен уметь обрабатывать несколько 4-х кортежей с одного и того же исходного TCP-порта и IP-адреса, но отдельный NAT может быть не столь умен в этом, и может использовать отдельный TCP-порт на общедоступном IP-адресе NAT для каждого соединения, которое бы очень быстро прожигало все возможные TCP-порты 64Ki.

Шлюзы NAPT не могут определить, закончился ли поток UDP, поэтому они часто сохраняют сопоставления портов UDP в течение времени ожидания от 30 секунд до нескольких минут.

Даже если NAT умело использует повторно один и тот же исходный порт TCP или UDP для множества кортежей 4 соединений, сам объем соединений, которые может создать masscan, может нарушить способность NAT отслеживать все параллельные открытые соединения.

Если вы попытаетесь отсканировать все ~4 миллиарда адресов IPv4 с примерной скоростью 100000 массового тестирования производительности, вы преодолеете ограничение количества портов 64Ki менее чем за секунду. Я ожидал бы, что около 500 попыток в секунду вызовут эту проблему. Не удивительно, что их ставка по умолчанию составляет всего 100.

Это закончилось проблемой, связанной с настройкой NAT в Virtualbox. Я не на 100% уверен в том, как Virtual Box управляет обязанностями NAT, поэтому я не могу дать техническое объяснение, но после того, как я перешел с "NAT" на "Bridged NAT", эта проблема исчезла. Я не тестировал Masscan, но при использовании ALTDNS с моим NAT в исходной конфигурации перечисление поддоменов, которое я обсуждал в комментариях, заняло более 3 часов, и мне приходилось многократно отключать / вызывать интерфейс. После корректировок, которые превратились в 30 минут без перезагрузки интерфейса.

Кстати, чтобы ответить прямо на ваш вопрос, вы переполняете свой маршрутизатор, который выполняет трансляцию собственного адреса и перенаправляет каждый отправленный вами пакет, вы замедляете ответ своего собственного маршрутизатора.

Вы можете попытаться добавить свой компьютер прямо в демилитаризованную зону на маршрутизаторе.

Хотя я не уверен, насколько это поможет с исходящими запросами, а не входящими.

Другие вопросы по тегам