Прокси-сервер Squid не работает, используется Ubuntu Server 10.04 и две сетевые карты. Один подключен к WAN, а другой к LAN

Я пытаюсь настроить прокси-сервер, но не могу этого сделать. Вот подробности моей настройки

У меня есть один сервер (серия IBM X3800) и один настольный ПК. Сервер должен подключиться к сетевой карте. eth0 и eth1. eth0 подключен к WAN через глобальный IP-адрес серии 202, и интернет работает нормально на сервере, я могу подключиться к Интернету. eth1 подключен к коммутатору, а ниже - config в eth1

IP: 192.168.2.2
Netmask: 255.255.255.0
Gateway: 192.168.2.1
Network: 192.1968.2.0
Broadcast: 192.168.2.255

Я просто установил прокси Squid с помощью apt-get install squid, Я изменил файл

/etc/squid/squid.conf

и добавил ниже детали

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
acl lan src 192.168.2.0/24
http_access allow lan

и наконец добавил эти приемлемые правила

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to globalip:3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

где globalip - это IP eth0.

Теперь настольный ПК подключен к серверу через коммутатор, и конфигурация ip для настольного ПК:

IP: 192.168.2.4
Netmaskapt-get install squid: 255.255.255.0
Gateway: 192.168.2.1
Network: 192.1968.2.0
Broadcast: 192.168.2.255

Я могу легко пинг с рабочего стола на сервер и с сервера на рабочий стол. Но моя настольная система не может получить доступ к Интернету. Так что я думаю, что проблема с кальмаром. Пожалуйста, помогите мне решить эту проблему. Если вам нужна другая информация, пожалуйста, дайте мне знать.

Спасибо

3 ответа

Вы пытались пинговать www.google.com? Если вы не получили ответа, возможно, проблема в настройке squid или iptables. Если вы можете установить bind9 для поддержки DNS. Надеюсь, поможет.

Ваш "шлюз" указан как 192.168.2.1, но вы пытаетесь создать прозрачный прокси на 192.168.2.2.

Ваш "сервер", который имеет реальный доступ в Интернет на eth0, не должен указывать шлюз в конфигурации для eth1, так как тогда он даст два шлюза по умолчанию, один из которых может не работать даже с неясным.

Итак, удалите этот шлюз по умолчанию и установите шлюз по умолчанию на клиентском ПК в 192.168.2.2,

Я также получал ту же ошибку, но вот как я решил, назначить разные сети для обоих ник (сетевая карта)

Предположим, вы назначаете 192.168.1.Ipeth0

тогда вы должны назначить 192.168.2.IP eth1

Вы можете использовать 192.168.2.ip или любую другую сеть, кроме той, которая назначена eth0 это 192.168.1.IP

и предположим eth0 подключен к маршрутизатору, он должен иметь шлюз, как маршрутизаторы IP

И предположим eth1 подключен к коммутатору, через который подключены клиентские машины, ip прокси должен быть введен в настройке прокси в браузере

и также без комментариев net.ipv4.ip_forward=1

который присутствует в /etc/sysctl.conf сохранить настройки файла и перезагрузиться, подтвердить на сервере, что пинг получен, введя

ping www.google.comс сервера squid и проверь работает ли интернет

пинг по IP eth1 это то, что связано с коммутатором для клиентов ПК. пинг ip из eth1 с клиентского терминала

Ваш ip 2.2 и 2.4, которые находятся в той же сети, лучше измените ip eth1 на 192.168.3.ip или замените номер 3 на любое число, отличное от 2, и нет необходимости вводить шлюз в eht1, но широковещательный адрес также изменения предполагают, что вы выбрали 192.168.3.IP для eth1, тогда сеть - 192.168.3.0 и широковещательный ip - 192.168.3.255

Ниже моя конфигурация

auto eth0  ( ON board Ethernet port & is connected to ROuter)

iface eth0 
inet static

address 192.168.2.8
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.5
dns-nameservers 192.168.2.5 8.8.8.8
auto eth1

(Сетевая карта подключена к коммутатору, а клиенты подключены к коммутатору)

iface eth0
inet static

address 192.168.1.120
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.5
dns-nameservers 192.168.2.5 8.8.8.8
Clients have ip of 192.168.1.IP
Другие вопросы по тегам