kdump でサポートされる VLAN 設定
Environment
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- VLAN 上のリモートターゲットに vmcores をダンプするように設定された
kdump
Issue
kdump
で動作する VLAN ネットワーク設定とは?
Resolution
Red Hat Enterprise Linux 8
-
ローカルシステムの
kdump
でサポートされる VLAN 設定- シングルデバイス
- ボンディング
- チーム
-
ローカルシステムの
kdump
でサポートされない VLAN 設定- ブリッジ
Red Hat Enterprise Linux 7
-
ローカルシステムの
kdump
でサポートされる VLAN 設定- シングルデバイス
- ボンディング
-
ローカルシステムの
kdump
でサポートされない VLAN 設定- ブリッジ
- チーム
Root Cause
Red Hat Enterprise Linux 8
-
ローカルシステムの VLAN 設定をチェックする
kdump
(執筆時はkexec-tools-2.0.20-46.el8_4.2.x86_64
) のソースコードを以下に示します。このkdump
はブリッジデバイス上の VLAN がサポートされないことをコンソールに明示的に報告します。kdump_setup_vlan() { local _netdev=$1 local _phydev="$(awk '/^Device:/{print $2}' /proc/net/vlan/"$_netdev")" local _netmac="$(kdump_get_mac_addr $_phydev)" local _kdumpdev #Just support vlan over bond and team if kdump_is_bridge "$_phydev"; then derror "Vlan over bridge is not supported!" <----- exit 1 elif kdump_is_bond "$_phydev"; then kdump_setup_bond "$_phydev" echo " vlan=$(kdump_setup_ifname $_netdev):$_phydev" > ${initdir}/etc/cmdline.d/43vlan.conf else _kdumpdev="$(kdump_setup_ifname $_phydev)" echo " vlan=$(kdump_setup_ifname $_netdev):$_kdumpdev ifname=$_kdumpdev:$_netmac" > ${initdir}/etc/cmdline.d/43vlan.conf fi }
Red Hat Enterprise Linux 7
-
ローカルシステムの VLAN 設定をチェックする
kdump
(執筆時はkexec-tools-2.0.15-21.el7_6.3.x86_64
) のソースコードを以下に示します。このkdump
はブリッジデバイスまたはチーム上の VLAN がサポートされないことをコンソールに明示的に報告します。kdump_setup_vlan() { local _netdev=$1 local _phydev="$(awk '/^Device:/{print $2}' /proc/net/vlan/"$_netdev")" local _netmac="$(kdump_get_mac_addr $_phydev)" local _kdumpdev #Just support vlan over bond, it is not easy #to support all other complex setup if kdump_is_bridge "$_phydev"; then derror "Vlan over bridge is not supported!" <--- exit 1 elif kdump_is_team "$_phydev"; then derror "Vlan over team is not supported!" <--- exit 1 elif kdump_is_bond "$_phydev"; then kdump_setup_bond "$_phydev" echo " vlan=$_netdev:$_phydev" > ${initdir}/etc/cmdline.d/43vlan.conf else _kdumpdev="$(kdump_setup_ifname $_phydev)" echo " vlan=$_netdev:$_kdumpdev ifname=$_kdumpdev:$_netmac" > ${initdir}/etc/cmdline.d/43vlan.conf fi }
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments