Для Centos 7 или RHEL 7 :Я столкнулся с этой проблемой при установке pycharm -community -2017.1.4 на RHEL 7.1. Ошибка была:
Unsupported Java Version: Cannot start under Java 1.7.0_75-mockbuild_2015_01_16_09_12-b00: Java 1.8 or later is required
Я обнаружил, что требуемая версия Java установлена, но не обнаружена. Затем я провел поиск в Интернете и использовал следующее для решения этой проблемы:
# alternatives --config java
выход:
Selection Command
-----------------------------------------------
* 1 /usr/lib/jvm/java-1.7.0-openjdk1.7.0.75-2.5.4.2.el7_0.x86_64 /jre/bin/java
2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
+ 3 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.31-2.b13.el7.x86_64/jre/bin/java
4 /usr/java/jdk1.8.0_91/jre/bin/java
Enter to keep the current selection[+], or type selection number:
Теперь введите номер нужной версии и нажмите клавишу ввода следующим образом:
Enter to keep the current selection[+], or type selection number:4
Проверить версию Java:
# java -version
Выход:
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
В дополнение к сетевому стеку Linux существует дополнительный «стек», предназначенный для изменения поведения, но максимально отделенный от сетевого стека :Netfilter. Эта функция позволяет клиентам (, все еще находящимся в ядре ), подключаться к нему для перехвата пакетов в различных стратегически важных местах в течение его жизни в сетевом стеке :, который используется для брандмауэра и выполнения NAT. Среди этих клиентов, но не только, есть iptables и nftables . Вот соответствующая схема потока пакетов в Netfilter и General Networking :
Автор Ян Энгельхардт-Собственная работа, происхождение SVGPNG , CC BY -SA 3.0 , Ссылка
Хотя эта схема была создана с учетом iptables , она также применима к nftables . В этом ответе nftables играет ту же роль, что и iptables . Большая часть того, что здесь сказано о nftables , применимо к iptables(legacy или версии nft )и наоборот -.
Как видно, другим важным клиентом (, который действительно считается частью Netfilter ), является conntrack
, который отслеживает все наблюдаемые потоки, а также выполняет большую часть обработки NAT, используя тот же поток. бухгалтерия. NAT на самом деле не обрабатывается nftables :, как написано в центре схемы,он будет получать только первый пакет каждого потока, чтобы иметь возможность задать правило изменения, которое будет определять судьбу всего потока (, а не отдельного пакета ):, как только информация будет сохранена в записи поиска conntrack
, conntrack
будет обрабатывать его автономно, а цепочки типа ловушек nat
не будут видеть следующие пакеты из этого потока.
Таким образом, не имеет значения :, если поток уже обрабатывается conntrack
, на него не повлияют никакие изменения в nat
правилах, даже если правил больше нет, просто потому, что эти правила больше не используются.
Что можно сделать, чтобы повлиять на этот поток, так это запросить непосредственно средство conntrack
. Соответствующий инструмент для этого называетсяconntrack
(из https://conntrack-tools.netfilter.org/).
Как писал ОП, его можно использовать для чтения информации о conntrack
записи, но также можно использовать для обновления, создания, удаления или очистки (удаления всех )записей.
Можно выбрать степень детализации:
удалить все записи:
conntrack -F
удалить все записи snat -ed (технически это означает, что адрес получателя ответа не совпадает с исходным адресом источника в таблице поиска):
conntrack -D --src-nat
вплоть до хирургического удаления записи OP с указанием всех элементов, включая точный идентификатор ICMP (, чтобы это не нарушило идентичную команду ping, которая также была запущена до удаления правил NAT, поскольку идентификатор, безусловно, быть другим):
# conntrack -D -p icmp --orig-src 192.168.2.100 --orig-dst 8.8.8.8 --reply-src 8.8.8.8 --reply-dst 192.168.1.10 --icmp-type 8 --icmp-code 0 --icmp-id 13006
icmp 1 28 src=192.168.2.100 dst=8.8.8.8 type=8 code=0 id=13006 src=8.8.8.8 dst=192.168.1.10 type=0 code=0 id=13006 mark=0 use=1
conntrack v1.4.6 (conntrack-tools): 1 flow entries have been deleted.
(нет причин, по которым Ubuntu 18.04LTS conntrack
1.4.4 ведет себя по-другому)
После удаления этой записи следующий пакет, который ранее был частью этого потока, будет рассматриваться как новый пакет. Находясь в состоянии NEW , он снова получит шанс быть измененным и пройдет по цепочкам nat
. Так как переделки больше не будет,если это был выход, он пройдет через NAT -к следующему маршрутизатору, который, вероятно, отбросит его или передаст маршрутизатору, который отбросит его (из-за строгой переадресации обратного пути или из-за определенных правил маршрутизации для адреса RFC1918 ), если это был поздний входной ответ от 8.8.8.8, он будет локально маршрутизирован и проигнорирован сетевым стеком :команда ping прервана и теперь истекает время ожидания.