Как решить проблему "NAT Moderate" в Xbox 360, если у меня нет доступа к маршрутизатору?
После того, как, наконец, мне удалось подключить мой Xbox 360 к жизни, я столкнулся с проблемой "умеренного NAT".
Прежде всего, вот моя установка...
беспроводная широкополосная связь>(usb)> ноутбук Ubuntu 11.10 >(ethernet)> xbox 360
Я читал много форумов, решающих проблему NAT, таких как http://ubuntuforums.org/showthread.php?t=538796, но все они используют маршрутизатор. Из моего понимания его определенные порты, которые должны быть переадресованы.
Можно ли это исправить, если у меня нет маршрутизатора для переадресации портов? Так как у меня нет доступа к DMZ?
ура
2 ответа
Маршрутизатор - это, по сути, ограниченный компьютер. Так что ваш компьютер, особенно легко с Linux!:) может выступать в качестве маршрутизатора для вашего XBOX (и остальной части вашей внутренней сети, если вы хотите поделиться своим 3G-интернетом с большим количеством устройств)
сначала вам нужны iptables для управления прохождением и пересылкой NAT, если они еще не установлены, в терминале:
sudo apt-get install iptables
и затем нажмите Enter, чтобы установить
тогда мы собираемся сделать небольшой скрипт, чтобы вы сделали необходимые настройки, чтобы это работало
-------- snip ---------
# just a shorter name for iptables
IPTABLES='/sbin/iptables'
# internal network interface
int='eth0'
# interface to internet ,check with ifconfig , but its probably ppp0 for you
ext='eth1'
# we configure the network interface to the ip below
ifconfig $int 10.0.0.1 netmask 255.255.255.0
# ip address for the xbox
xbox='10.0.5'
# enable forwarding of packages
echo 1 > /proc/sys/net/ipv4/ip_forward
# if you wish to forward ports it would look something like this
# but change ports (1000,2000) to what your xbox requires you to forward
$iptables -t nat -A PREROUTING -p tcp -i $ext --dport 1000 -J DNAT --to $xbox
# if you need udp ports as well
$iptables -t nat -A PREROUTING -p udp -i $ext --dport 1000 -J DNAT --to $xbox
# use --dport 1000:2000 , if you need to forward a range
-------- snip ---------
сохраните его в текстовом файле, чтобы вы могли запускать его всякий раз, когда вы перезагружаете компьютер (так как эти настройки исчезают после перезагрузки)
также вам нужно удалить внутреннюю сетевую карту из управления из Ubuntu Network Manager
редактировать /etc/NetworkManager/NetWorkManager.conf
и введите текст:
unamanaged-devices=mac:00:23:33:ec:a0:6a
ниже строки с [keyfile]
(вам нужно изменить адрес Mac на адрес вашей внутренней сетевой карты (проверьте с помощью ifconfig в терминале)
теперь, наконец, запустите ваш скрипт с sudo sh nameofscript.txt
и вам должно быть хорошо, чтобы пойти, как только вы подключите ваш Xbox к сетевой карте и дать ему IP-адрес, как 10.0.2 netmask 255.255.255.0
удачи!:)
Там может быть много способов решить эту проблему. Мой ответ в основном для людей, которые не хотят связываться с iptables и firewall, такими как ufw, firestarer. Я запутался с ними и не мог понять, что случилось. Я решил сделать переустановку и следуйте процедуре ниже, которая работает.
Во-первых, вам нужно проверить, имеет ли ваша беспроводная широкополосная USB-флешка какую-либо функцию межсетевого экрана / фильтра, которая блокирует входящие соединения (путем поиска вашей модели в Google). Кроме того, вы можете протестировать с помощью программного обеспечения, такого как Utorrent или PFPortCheck, чтобы проверить случайный порт, если на вашем компьютере установлены окна. Стоит сказать, что ваш порт открыт. (Предупреждение: я обнаружил, что PFPortCheck дает точные результаты, но вредоносные). Такие сайты, как http://www.yougetsignal.com/tools/open-ports/ могут проверять ваш порт только при наличии такой службы, как веб-сервер, которая отвечает на их запросы. В противном случае они скажут, что ваш порт закрыт. К сожалению, я не смог найти простой, но надежный способ проверить это на Ubuntu (не возиться с iptables).
Во-вторых, когда вы используете общий доступ к Интернету с вашего беспроводного широкополосного USB, ваш компьютер работает как маршрутизатор между вашим xbox и интернетом (я предполагаю, что вы уже знаете, как использовать интернет на вашем xbox, установив для параметров IPv4 вашего проводного (ethernet) значение "Общий" на другие компьютеры "). Вы можете перенести порт на свой xbox (добавив правила в iptables) или включить UPnP. Я считаю, что позже для меня это намного проще. Сделать это:
Установите linux-idg, если он еще не установлен:
sudo apt-get install linux-igd
Включите ваш xbox (я полагаю, ваш xbox уже подключен к Ethernet вашего ноутбука). Запустите команду ниже:
sudo upnpd wlan0 eth0
замещать
wlan0' and
eth0with your broadband usb and ethernet name. You can check them by using the command:
ifconfig`.Если вы получаете
Invalid internal interface name 'eth0'
, это означает, что ваш xbox выключен, и порт Ethernet, кажется, отключен.Не беспокойся о
Unknown config line: upnp_log_filename = "";
, все в порядке.Это временное изменение. Вы должны делать это каждый раз, когда перезагружаете свой ноутбук, чтобы попасть на xbox live с проблемой NAT.
Проверьте соединение с Xbox Live на вашем Xbox. Проблема с NAT должна исчезнуть.