JP7234905B2 - 情報処理装置及びアドレス重複管理方法 - Google Patents

情報処理装置及びアドレス重複管理方法 Download PDF

Info

Publication number
JP7234905B2
JP7234905B2 JP2019209491A JP2019209491A JP7234905B2 JP 7234905 B2 JP7234905 B2 JP 7234905B2 JP 2019209491 A JP2019209491 A JP 2019209491A JP 2019209491 A JP2019209491 A JP 2019209491A JP 7234905 B2 JP7234905 B2 JP 7234905B2
Authority
JP
Japan
Prior art keywords
address
duplication
virtual machine
external network
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019209491A
Other languages
English (en)
Other versions
JP2021082961A (ja
Inventor
健人 塚田
雅信 土屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP2019209491A priority Critical patent/JP7234905B2/ja
Priority to US17/096,374 priority patent/US11575650B2/en
Priority to CN202011295188.9A priority patent/CN112825043A/zh
Publication of JP2021082961A publication Critical patent/JP2021082961A/ja
Application granted granted Critical
Publication of JP7234905B2 publication Critical patent/JP7234905B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Programmable Controllers (AREA)

Description

本発明は、情報処理装置及びアドレス重複管理方法に関する。
従来から、プラントや工場等(以下、これらを総称する場合には、単に「プラント」という)においては、工業プロセスにおける各種の状態量(例えば、圧力、温度、流量等)を制御するプロセス制御システムが構築されており、高度な自動操業が実現されている。具体的には、プロセス制御システムの核をなすコントローラ(プロセス制御装置)が、複数のセンサ(流量計や温度計等)の検出結果を取得し、この検出結果に応じてアクチュエータ(バルブ等)の操作量を求め、この操作量に応じてアクチュエータを操作することによって、上述した各種の状態量が制御されている。また監視装置によってプラントや工業プロセスの状態を監視している。
近年、このようなプロセス制御システムにおいて仮想化技術を用いて、コントローラや監視装置等を仮想化サーバ上のアプリケーションとして実装する例も増えている(例えば、特許文献1)。仮想化技術を実現する仮想化サーバをネットワークに接続する場合には、仮想マシンに割り当てられているIP(Internet Protocol)アドレスと、外部ネットワークに位置する装置に割り当てられているIPアドレスとが重複していないかを確認する必要がある。従来では、IPアドレスの重複確認にARP(Address Resolution Protocol)プロトコルによるIPv4(Internet Protocol version 4)アドレス重複チェックが行われている。
特開2015-138292号公報
しかしながら、従来技術による対策は単一のネットワーク機器をネットワークに増設した場合には有効だが、既設ネットワークに新たに仮想化サーバ等(以下「仮想化サーバ」という)を増設した場合には有効でない。それは、既設ネットワークに仮想化サーバを接続する際、仮想化サーバ内部の仮想マシンにはすでにIPアドレスが割り当てられており、従来技術によるIPアドレスの重複確認が働かないためである。プロセス制御システムにおいて制御機器に二重アドレスが生じると、出力の抜け、出力の重複、矛盾が発生し、制御対象に大ダメージを与えかねない。よって、一般的なIT技術よりも厳重な、二重アドレス問題の対策が必要となる。
上記事情に鑑み、本発明は、既設ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させることができる技術の提供を目的としている。
本発明の一態様は、ハードウェア(HW1)上でハードウェア(HW1)の代わりとして動作する仮想化部(22)と、前記仮想化部上でプロセス制御システムの一部として機能する少なくとも1つの仮想マシン(VM1,VM2)と、前記ハードウェアに外部ネットワーク(N1)が接続されると、前記外部ネットワークに対してアドレスの重複判定を行うアドレス重複判定部(24)と、前記アドレスの重複が検知された場合、前記仮想マシンと前記外部ネットワークとの接続を切断させるアドレス重複管理部(26,26c)と、を備える情報処理装置(20)である。
上記の構成により、情報処理装置は、ハードウェアを既設の外部ネットワークに接続した場合に、仮想マシンのアドレスの重複判定を行う。アドレスの重複判定の結果、アドレスが重複していると判定された場合には、情報処理装置は、外部ネットワークと仮想マシンとの接続を切断する。これにより、アドレスの重複があったとしても外部との通信が行われない。そのため、既設の外部ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させることが可能になる。
本発明の一態様は、上記の情報処理装置であって、前記アドレス重複管理部は、前記アドレスの重複が検知されなかった場合、前記仮想マシンと前記外部ネットワークとを通信可能に接続させる。
上記の構成により、仮想マシンと、新規に接続された外部ネットワークとで通信を行うことができる。
本発明の一態様は、上記の情報処理装置であって、前記仮想マシンのアドレスを取得する仮想マシン監視部(32)をさらに備え、前記アドレス重複判定部は、前記仮想マシン監視部によって取得された前記アドレスの重複判定を行う。
上記の構成により、仮想マシンのアドレスが不明の場合であっても仮想マシンのアドレスを取得することができる。これにより、仮想マシンのアドレスが登録されていない場合であっても、アドレスの重複判定を行うことができる。したがって、事前に仮想マシンのアドレスを登録しておく必要がない。そのため、アドレス登録に要する負担を軽減することができる。
本発明の一態様は、上記の情報処理装置であって、アドレスが重複した前記仮想マシンと前記外部ネットワークとの通信を切断するために、アドレスが重複した前記仮想マシンと前記外部ネットワークとの通信を遮断又はフィルタリングする仮想スイッチ制御部(27、27b)をさらに備える。
上記の構成により、アドレス重複時に、アドレスが重複した仮想マシンと外部ネットワークとの通信を遮断、又は、重複したアドレスが含まれるパケットをフィルタリングして遮断する。これにより、アドレス重複が起こっていない仮想マシンの外部への通信を可能にし、ネットワーク切断の影響を抑制することができる。
本発明の一態様は、上記の情報処理装置であって、アドレスが重複した前記仮想マシンのアドレスを変更するアドレス設定変更部(35,35d)をさらに備え、前記アドレス重複判定部は、未割当のアドレスが既に使用されているか否かを判定するために前記外部ネットワークに対して前記未割当のアドレスの重複判定を行い、前記未割当のアドレス設定変更部は、前記未割当のアドレスの重複判定の結果、前記アドレスの重複が検知されなかった場合に前記未割当のアドレスをアドレスが重複した前記仮想マシンのアドレスとして設定する。
上記の構成により、アドレスの重複が検知された場合、未割当のアドレスの重複判定を再度実行する。そして、未割当のアドレスの重複していない場合には、仮想マシンに対して、未割当のアドレスを再設定することで、アドレスの重複を回避する。したがって、アドレスの重複の影響により通信が行えなくなってしまうことを回避することができる。
本発明の一態様は、上記の情報処理装置であって、前記アドレスの重複が検知されたことを外部に通知する通知部(28,28c)をさらに備える。
上記の構成により、アドレスの重複が検知されると、作業者にアドレスの重複があったことを通知することができる。その結果、作業者がアドレス重複に気付かないという問題を解決することができる。
本発明の一態様は、ハードウェアに外部ネットワークが接続されると、前記外部ネットワークに対してアドレスの重複判定を行うアドレス重複判定ステップ(S103)と、前記アドレスの重複が検知された場合、ハードウェア上でハードウェアの代わりとして動作する仮想化部上でプロセス制御システムの一部として機能する少なくとも1つの仮想マシンと、前記外部ネットワークとの接続を切断させるアドレス重複管理ステップ(S105,S201)と、を有するアドレス重複管理方法である。
本発明の一態様は、上記のアドレス重複管理方法であって、アドレスが重複した前記仮想マシンのアドレスを変更するアドレス設定変更ステップ(S306)をさらに有し、前記アドレス重複判定ステップにおいて、未割当のアドレスが既に使用されているか否かを判定するために前記外部ネットワークに対して前記未割当のアドレスの重複判定を行い、前記アドレス設定変更ステップにおいて、前記未割当のアドレスの重複判定の結果、前記未割当のアドレスの重複が検知されなかった場合に前記未割当のアドレスをアドレスが重複した前記仮想マシンのアドレスとして設定する。
本発明の一態様は、上記のアドレス重複管理方法であって、前記アドレス重複管理ステップにおいて、前記未割当のアドレスの重複判定の結果、前記未割当のアドレスの重複が検知された場合に前記未割当のアドレスを割当済みに変更し、前記アドレス重複判定ステップにおいて、未割当のアドレスの重複判定を繰り返し行う。
本発明により、既設ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させることが可能となる。
第1の実施形態におけるプロセス制御システムのシステム構成を表す構成図である。 第1の実施形態におけるアドレステーブルの一例を示す図である。 第1の実施形態における情報処理装置の処理の流れを示すフローチャートである。 第2の実施形態におけるプロセス制御システムのシステム構成を表す構成図である。 第3の実施形態におけるプロセス制御システムのシステム構成を表す構成図である。 第3の実施形態における情報処理装置の処理の流れを示すフローチャートである。 第4の実施形態におけるプロセス制御システムのシステム構成を表す構成図である。 第4の実施形態におけるアドレステーブルの一例を示す図である。 第4の実施形態における情報処理装置の処理の流れを示すフローチャートである。 第5の実施形態におけるプロセス制御システムのシステム構成を表す構成図である。 第5の実施形態におけるアドレステーブルの一例を示す図である。
以下、本発明の一実施形態を、図面を参照しながら説明する。
(概要)
本発明の実施形態は、既設ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させるものである。従来、アドレス重複を検出する技術として、ARPプロトコルによるIPv4アドレス重複チェックの技術がある。この手法は、ARPリクエストのパケット中の、宛先IPを記述する箇所(ターゲットIP)に自装置のIPアドレスを指定し、このパケットをブロードキャスト送信する手法である。パケットを受け取る側は、パケット内のターゲットIPと自分のIPアドレスとが一致していた場合、パケット送信元へARPリプライを応答する。パケット内のターゲットIPと自分のIPアドレスとが一致しない場合には何も応答しない。
以上のやり取りにより、IPアドレス重複を調べたいネットワーク機器は、ARPリプライが返ってくればIPアドレス重複ありと判断し、返ってこなければIPアドレス重複なしと判断する。このようなチェックは、ある機器がネットワークに接続する際、その機器のIPアドレスを決めるときに行われる。
しかしながら、従来の技術ではアドレス重複の問題に対策しきれていない。従来の技術のARPを用いた対策は、単一のネットワーク機器をネットワークに増設した場合には有効だが、既設ネットワークに、既にIPアドレスが設定された仮想マシンを搭載した仮想化サーバを接続する場合には有効でない。その理由は、以下の2つの理由が挙げられる。一つ目の理由として、従来の技術による重複チェックが働くタイミングは、単一のネットワーク機器がネットワークに接続するときであるため、既設ネットワーク同士の接続ではそのチェックが働かないためである。二つ目の理由として、仮想化サーバの既設ネットワークへの増設は、「仮想化サーバ内部にある仮想的なスイッチ(仮想スイッチ)を既設ネットワークに接続する。」とみなせ、これが既設ネットワーク同士の接続と同等なためである。加えて、ネットワーク同士を接続する際、各ネットワークに属する機器にはすでにIPアドレスが割り当てられており、従来技術による接続直後の重複チェックによりアドレス重複が検出できたとしても、その重複に対する対処が行えない。これは仮想化サーバを既存ネットワークに増設するケースでも同じである。
以上より、仮想化サーバと既設ネットワーク同士を接続した場合のアドレス重複対策が必要である。
また、従来では、作業者のミスによるアドレス重複の影響を防げない場合がある。アドレス重複が起きないことを保証するために、仮想化サーバの既設ネットワークへの接続は、全ての仮想マシンを停止したうえで実施する必要がある。しかし外見上、仮想化サーバは1台の情報処理装置であり、作業者から見ると仮想化サーバ内に仮想スイッチが存在し、仮想マシンが存在していることを認識しづらい。そのため、作業者が仮想マシンを停止せずに誤って仮想マシンを既設ネットワークに接続してしまうというミスを起こしやすい。このような状況は、以下のような状況で発生しやすい。
・別の系で使っていた仮想化サーバの移設
・既設ネットワークの作業担当者と、仮想化サーバの作業担当者が分かれており、後者が既設ネットワークについて詳しく把握していなかったとき。
本発明の実施形態では、ハードウェアと既設ネットワークとの接続がなされた場合に、仮想マシンのIPアドレスの重複判定を行う。IPアドレスの重複判定の結果、IPアドレスが重複していると判定された場合には、仮想化サーバにおいて外部ネットワークと仮想マシンとの接続を切断する。これにより、IPアドレスの重複があったとしても外部との通信が行われない。そのため、既設ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させることができる。
(第1の実施形態)
図1は、第1の実施形態におけるプロセス制御システム100のシステム構成を表す構成図である。プロセス制御システム100は、物理マシン11、物理マシン12、物理スイッチ13、情報処理装置20及びUI部40を備える。物理マシン11、物理マシン12及び物理スイッチ13は、外部ネットワークN1に属している。情報処理装置20と外部ネットワークN1とは、物理スイッチ13を介して接続されている。
物理マシン11及び物理マシン12は、例えば流量計や温度センサ等のセンサ機器、流量制御弁や開閉弁等のバルブ機器、ファンやモータ等のアクチュエータ機器、その他のプラントの現場に設置される機器である。物理マシン11は、実デバイス14を備える。物理マシン12は、実デバイス15を備える。実デバイス14及び実デバイス15は、NIC(Network Interface Card)等の通信デバイスである。実デバイス14及び実デバイス15は、それぞれ、物理スイッチ13に接続されている。
物理スイッチ13は、物理マシン11と情報処理装置20との間の通信、及び、物理マシン12と情報処理装置20との間の通信を中継する物理スイッチである。
情報処理装置20は、工業プロセスの制御に用いられているプロセス制御装置および監視装置等、プロセス制御システムの一部として機能する仮想マシンが動作する。情報処理装置20は、MPU(Micro-Processing Unit:マイクロプロセッサ)やメモリ等からなるハードウェアHW1を備えており、インストールされたプログラムがハードウェアHW1によって実行されることによって情報処理装置20の機能が実現される。なお、図1中の実デバイス21は、NIC等の通信デバイスである。実デバイス21は、外部ネットワークN1に接続されている。
ここで、情報処理装置20には、仮想化部22を実現するプログラム、リンク監視部23、アドレス重複判定部24、アドレス記憶部25、アドレス重複管理部26、仮想スイッチ制御部27及び通知部28の各機能部を実現するためのプログラムがインストールされている。なお、これらのプログラムによって実現される機能は、情報処理装置20に固定的に組み込まれる機能である。これらのプログラムは、ホストOS上で実行される。仮想化部22は、ハードウェアHW1上でハードウェアHW1の代わりとして動作する。仮想化部22は、仮想スイッチ29により、実デバイス21と仮想デバイス30,31との対応付け等を行って、仮想マシンVM1,VM2を並列動作させる。
仮想マシンVM1は、仮想的なハードウェアである。この仮想マシンVM1は、仮想スイッチ29に接続する仮想デバイス30を備える。また、仮想マシンVM2は、仮想的なハードウェアである。この仮想マシンVM2は、仮想スイッチ29に接続する仮想デバイス31を備える。つまり、上述した仮想化部22は、ハードウェアHW1の代わりとして仮想的に動作する仮想マシンVM1,VM2の管理を行う。
次に、リンク監視部23、アドレス重複判定部24、アドレス記憶部25、アドレス重複管理部26、仮想スイッチ制御部27及び通知部28の各機能部の動作について説明する。
リンク監視部23は、実デバイス21への接続を監視する。
アドレス重複判定部24は、アドレス重複判定処理を行う。アドレス重複判定処理とは、IPアドレスが重複しているか否かを判定する処理である。例えば、アドレス重複判定部24は、ARPプロトコルによるIPアドレス重複判定を行う。
アドレス記憶部25は、アドレスの情報をテーブル(アドレステーブル)として記憶する。アドレステーブルには、少なくとも仮想マシンVM(例えば、仮想マシンVM1及び仮想マシンVM2)に割り当てられているIPアドレスが登録されている。
図2は、第1の実施形態におけるアドレステーブルの一例を示す図である。図2に示すように、第1の実施形態におけるアドレステーブルには、仮想マシンVM(例えば、仮想マシンVM1及び仮想マシンVM2)に割り当てられているIPアドレスが登録されている。なお、第1の実施形態においては、人手でアドレステーブルにIPアドレスが登録される。
図1に戻って情報処理装置20の説明を続ける。
アドレス重複管理部26は、IPアドレスの重複を管理する。具体的には、アドレス重複管理部26は、アドレス重複判定部24によりIPアドレスの重複が見つかった場合には、実デバイス21と仮想スイッチ29との間の通信路(以下「仮想スイッチ通信路」という)の切断を仮想スイッチ制御部27に指示する。アドレス重複管理部26は、アドレス重複判定部24によりIPアドレスの重複が見つからなかった場合には、仮想スイッチ通信路の遮断の解除を仮想スイッチ制御部27に指示する。すなわち、アドレス重複管理部26は、IPアドレスの重複が見つからなかった場合には、仮想スイッチ通信路の接続を仮想スイッチ制御部27に指示する。なお、本明細書では、接続を解除する用語において、遮断は、通信の切断の一例として使用している。すなわち、本明細書では、通信を切断するための手法の1つとして遮断を使用している。通信を切断するためのその他の手法としては、フィルタリングがある。
仮想スイッチ制御部27は、アドレス重複管理部26の指示に従って仮想スイッチを制御することによって、仮想スイッチ通信路を接続又は遮断する。なお、通信の遮断は、仮想スイッチ29、仮想マシンVM内の仮想デバイス30,31、仮想スイッチ通信路で実施することができる。そのため、遮断は、仮想スイッチ通信路に限らず、仮想デバイス30,31や仮想スイッチ29で行ってもよい。
通知部28は、IPアドレスの重複が見つかった場合には、IPアドレスの重複が見つかった旨をUI部40に通知する。
UI部40は、作業者や管理者等が情報処理装置20の状態を監視するユーザインタフェースである。例えば、UI部40は、情報処理装置20からの情報を表示する表示装置である。具体的には、UI部40は、重複するIPアドレスの存在、すなわち重複するIPアドレスの情報を表示する。
図3は、第1の実施形態における情報処理装置20の処理の流れを示すフローチャートである。なお、図3の処理開始時には、実デバイス21はリンクダウンしており、仮想スイッチ制御部27が仮想スイッチ通信路を遮断しているものとする。
実デバイス21を外部ネットワークN1に接続すると、リンク監視部23はリンクアップを検知する(ステップS101)。リンク監視部23はリンクアップを検知した旨をアドレス重複管理部26に出力する。アドレス重複管理部26は、リンク監視部23から出力されたリンクアップの通知を受けると、アドレス記憶部25に記憶されている全てのIPアドレスをアドレス記憶部25から取得する(ステップS102)。
アドレス重複管理部26は、取得した全てのIPアドレスの重複判定をアドレス重複判定部24に指示する。アドレス重複判定部24は、アドレス重複管理部26からの指示に従って、全てのIPアドレスのアドレス重複判定処理を実行する(ステップS103)。具体的には、アドレス重複判定部24は、ターゲットIPに、取得したIPアドレスのうち1のIPアドレスを指定し、ARPリクエストのパケットを、実デバイス21を介して外部ネットワークN1にブロードキャスト送信する。そのため、アドレス重複判定部24は、全てのIPアドレスのアドレス重複判定処理を行うためには、IPアドレスの数だけARPリクエストのパケットを外部ネットワークN1にブロードキャスト送信する必要がある。
アドレス重複判定部24は、ARPリクエストに対する返信があった場合には、IPアドレスの重複があったと判定する。この場合、仮想マシンVM1,2のいずれかに割り当てられているIPアドレスと、外部ネットワークN1に属する物理マシン11,物理マシン12のいずれかに割り当てられているIPアドレスとが重複していることになる。そして、アドレス重複判定部24は、IPアドレスが重複している旨をアドレス重複管理部26に通知する。
一方、アドレス重複判定部24は、ARPリクエストのパケットをブロードキャスト送信した直後から予め定められたタイムアウト期間の間、ARPリクエストに対する返信がない場合には、IPアドレスの重複がないと判定する。このタイムアウト期間の値は、アドレス重複管理部26が保有しており、作業者がUI部40を経由してタイムアウト期間の値を設定することができる。この場合、仮想マシンVM1,2のいずれかに割り当てられているIPアドレスと、外部ネットワークN1に属する物理マシン11,物理マシン12のいずれかに割り当てられているIPアドレスとが重複していないことになる。そして、アドレス重複判定部24は、IPアドレスが重複していない旨をアドレス重複管理部26に通知する。
アドレス重複管理部26は、IPアドレスの重複があったか否かの情報をアドレス重複判定部24からの通知により得る(ステップS104)。
IPアドレスの重複があった場合(ステップS104-YES)、アドレス重複管理部26は何も行わず、仮想スイッチ通信路の遮断を継続する(ステップS105)。その後、アドレス重複管理部26は、通知部28を介して、IPアドレスの重複があった旨をUI部40に通知する(ステップS106)。
一方、IPアドレスの重複がなかった場合(ステップS104-NO)、アドレス重複管理部26は仮想スイッチ制御部27を介して、仮想スイッチ通信路を接続する(ステップS107)。
以上のように構成されたプロセス制御システム100によれば、ハードウェアに新規にネットワークが接続された場合に、仮想マシンのIPアドレスの重複判定を行う。IPアドレスの重複判定の結果、IPアドレスが重複していると判定された場合には、仮想化サーバにおいて外部と仮想マシンとの接続を切断する。これにより、IPアドレスの重複があったとしても外部との通信が行われない。そのため、既設ネットワークに仮想化サーバを接続した際に生じうるアドレス重複の影響を低減させることが可能になる。
また、作業者が情報処理装置20を既存ネットワークに接続した際、既存ネットワークに属する物理マシンのIPアドレスと仮想マシンVMのIPアドレスに重複があったとしても、仮想スイッチ通信路を切断するためアドレス重複の悪影響を抑えることができる。
また、本発明によるIPアドレスの重複判定やネットワークの切断機能は、仮想マシンVM内のOSに設ける必要はなく、情報処理装置20のホストOSに対してのみに適用するだけで済む。そのため、稼働している仮想マシンVMの台数に関わらず、より簡便な方法で実現することができる。
IPアドレスの重複判定および仮想化スイッチ通信路の切断機能により、作業者は情報処理装置20を同コントローラ内の仮想マシンに割り当てられたIPアドレスの確認を事前に行うことなく既設ネットワークに接続することができる。これにより、作業者が情報処理装置20を既存ネットワークに接続する作業の効率化(準備に必要な作業の削減、作業者の心理的負担減少)が図れる。
プロセス制御システム100では、IPアドレスの重複が検知されると、UI部40経由で作業者に通知することができる。具体的には、UI部40では、重複するIPアドレスの情報を表示する。その結果、作業者がアドレス重複に気付かないという問題を解決することができる。
<変形例>
リンク監視部23、アドレス重複判定部24、アドレス記憶部25、アドレス重複管理部26、仮想スイッチ制御部27及び通知部28は、仮想化部22で実現されてもよい。
UI部40は、情報処理装置20に備えられてもよい。
(第2の実施形態)
第1の実施形態では、仮想マシンVMに割り当てられている全てのIPアドレスをアドレステーブルに事前に登録する必要がある。そのため、人手による労力がかかるとともに、人手の介入によりIPアドレスの登録に誤りが生じてしまう場合もある。そこで、第2の実施形態では、仮想マシンVMに割り当てられている全てのIPアドレスをアドレステーブルに自動で登録する構成について説明する。
図4は、第2の実施形態におけるプロセス制御システム100aのシステム構成を表す構成図である。プロセス制御システム100aは、情報処理装置20aがアドレス記憶部25に代えてアドレス記憶部25aを備える点、仮想マシン監視部32を新たに備える点でプロセス制御システム100と構成が異なる。なお、プロセス制御システム100aのその他の構成についてはプロセス制御システム100と同様である。そのため、プロセス制御システム100a全体の説明は省略して、アドレス記憶部25a及び仮想マシン監視部32について説明する。
アドレス記憶部25aは、アドレスの情報をテーブル(アドレステーブル)として記憶する。アドレス記憶部25aに記憶されているアドレステーブルには、処理開始時にはIPアドレスの情報は登録されていない。
仮想マシン監視部32は、仮想マシンVM(仮想マシンVM1,仮想マシンVM2)のIPアドレスを取得し、取得したIPアドレスをアドレステーブルに書き込むことによって、仮想マシンVM(仮想マシンVM1,仮想マシンVM2)のIPアドレスをアドレステーブルに登録する。仮想マシン監視部32が仮想マシンVM(仮想マシンVM1,仮想マシンVM2)のIPアドレスを取得する方法は、以下の2つの手法が挙げられる。
(第1の手法)
仮想マシンVM(仮想マシンVM1,仮想マシンVM2)のゲストOSからのARPプロトコルによるIPv4アドレス重複チェックをホストOSで検知し(仮想スイッチ29へホストOSも接続する等で検知し)、仮想マシン監視部32は仮想マシンVM(仮想マシンVM1,仮想マシンVM2)のIPアドレスとMACアドレスとを取得する。
(第2の手法)
仮想マシン監視部32は、ハイパーバイザーの機能を用いて、仮想マシンVM(仮想マシンVM1,仮想マシンVM2)の情報(例えば、IPアドレス)を取得する。例えば、仮想マシン監視部32は、Hyper-V(登録商標)の統合サービスの機能であるHyper-V Data Exchange Service、又は、Powershell(登録商標)コマンドレット等を使用する。
以上のように構成されたプロセス制御システム100aによれば、第1の実施形態と同様の効果を得ることができる。
さらに、プロセス制御システム100aでは、アドレステーブルに事前に仮想マシンVMのIPアドレスを登録する必要がない。したがって、人手による労力を軽減するとともに、人手の介入によるIPアドレスの登録誤りを軽減することができる。
<変形例>
リンク監視部23、アドレス重複判定部24、アドレス記憶部25a、アドレス重複管理部26、仮想スイッチ制御部27、通知部28及び仮想マシン監視部32は、仮想化部22で実現されてもよい。
UI部40は、情報処理装置20aに備えられてもよい。
(第3の実施形態)
第1の実施形態及び第2の実施形態では、IPアドレス重複時に仮想スイッチ通信路を遮断するため、全ての仮想マシンVMが外部ネットワークN1と接続できなくなってしまう場合がある。そこで、第3の実施形態では、IPアドレス重複時に、常に仮想スイッチ通信路を遮断するのではなく、IPアドレスが重複した仮想マシンVMと仮想スイッチ29との間の通信路(以下、仮想マシン通信路と記す)を遮断、又は、重複したIPアドレスが含まれるパケットをフィルタリングして遮断する構成について説明する。
図5は、第3の実施形態におけるプロセス制御システム100bのシステム構成を表す構成図である。プロセス制御システム100bは、情報処理装置20bが、重複時ルールデータベース33を新たに備える点、ルールに基づき仮想スイッチを制御する仮想スイッチ制御部27bを備える点でプロセス制御システム100及び100aと構成が異なる。なお、プロセス制御システム100bのその他の構成についてはプロセス制御システム100及び100aと同様である。そのため、プロセス制御システム100b全体の説明は省略して、重複時ルールデータベース33及び本実施形態における仮想スイッチ制御部27bについて説明する。
重複時ルールデータベース33は、IPアドレスが重複した際に実行する複数のルールが登録されたデータベースである。重複時ルールデータベース33には、例えば以下の3つのルールが登録されている。
(1)仮想スイッチ通信路の遮断を継続
(2)IPアドレスが重複した仮想マシン通信路を遮断
(3)重複したIPアドレスが含まれるパケットをフィルタリング
上記ルール(1)は、第1の実施形態及び第2の実施形態のように、仮想スイッチ通信路の遮断を継続するルールである。
上記ルール(2)は、IPアドレスが重複した仮想マシン通信路だけを遮断することによって、IPアドレスが重複していない仮想マシン通信路は通信可能にするルールである。
なお、上記ルール(1)及び(2)において通信の遮断は、仮想スイッチ29、仮想マシンVM内の仮想デバイス30,31、仮想スイッチ通信路、仮想マシン通信路で実施することができる。そのため、遮断は、仮想スイッチ通信路や仮想マシン通信路に限らず、仮想デバイス30,31や仮想スイッチ29で行ってもよい。
上記ルール(3)は、仮想スイッチ通信路において、重複したIPアドレスが含まれるパケットをフィルタリングして破棄するルールである。フィルタリングは、仮想スイッチ29において実施される。そのため、仮想スイッチ29には、フィルタリング対象となるIPアドレスの情報が登録されている。
上記の(1)~(3)のルールの何れのルールを実行するのかは、仮想スイッチ制御部27bが自由に選択できてもよいし、予め設定されていてもよい。なお、上記の(1)~(3)のルールは組み合わせて実行されてもよい。
仮想スイッチ制御部27bは、重複時ルールデータベース33に登録されている(1)~(3)のルールの何れか又は組み合わせに従って、仮想スイッチ通信路及び仮想マシン通信路を接続又は遮断する。
図6は、第3の実施形態における情報処理装置20bの処理の流れを示すフローチャートである。なお、図6の処理開始時には、実デバイス21はリンクダウンしており、仮想スイッチ制御部27bが仮想スイッチ通信路を遮断しているものとする。図6において、図3と同様の処理については図3と同様の符号を付して説明を省略する。
IPアドレスの重複があった場合(ステップS104-YES)、アドレス重複管理部26はIPアドレスの重複があったことを仮想スイッチ制御部27bに通知する。仮想スイッチ制御部27bは、アドレス重複管理部26からの通知に応じて、重複時ルールデータベース33を参照し、ルールに従って、仮想スイッチ通信路および仮想マシン通信路の接続制御を行う(ステップS201)。
具体的には、仮想スイッチ制御部27bは、ルールが(1)の場合、何も行わず、仮想スイッチ通信路の遮断を継続する。仮想スイッチ制御部27bは、ルールが(2)の場合、IPアドレスが重複した仮想マシン通信路だけを遮断することによって、IPアドレスが重複していない仮想マシン通信路は通信可能にする。仮想スイッチ制御部27bは、ルールが(3)の場合、仮想スイッチ通信路において、重複したIPアドレスが含まれるパケットをフィルタリングして破棄する。仮想スイッチ制御部27bは、ルールが(1)及び(2)の組み合わせの場合、仮想スイッチ通信路の遮断を継続するとともに、IPアドレスが重複した仮想マシン通信路だけを遮断/パケットフィルタリングする。
以上のように構成されたプロセス制御システム100bによれば、第1の実施形態と同様の効果を得ることができる。
さらにプロセス制御システム100bでは、重複時の一部のルールとして、IPアドレス重複時に、常に仮想スイッチ通信路を遮断するのではなく、IPアドレスが重複した仮想マシン通信路を遮断、又は、重複したIPアドレスが含まれるパケットをフィルタリングして遮断する。これにより、アドレス重複が起こっていない仮想マシンの外部への通信を可能にし、ネットワーク切断の影響を抑制することができる。
<変形例>
リンク監視部23、アドレス重複判定部24、アドレス記憶部25、アドレス重複管理部26、通知部28、重複時ルールデータベース33及び仮想スイッチ制御部27bは、仮想化部22で実現されてもよい。
UI部40は、情報処理装置20bに備えられてもよい。
(第4の実施形態)
第4の実施形態では、第3の実施形態とは別の手法で、第1の実施形態及び第2の実施形態で生じる課題を解決する。具体的には、第4の実施形態では、IPアドレスが重複している場合には、重複しているIPアドレスを変更して、IPアドレスが重複しないようにする構成について説明する。
図7は、第4の実施形態におけるプロセス制御システム100cのシステム構成を表す構成図である。プロセス制御システム100cは、情報処理装置20cが、アドレス記憶部25、アドレス重複管理部26及び通知部28に代えてアドレス記憶部25c、アドレス重複管理部26c及び通知部28cを備える点、アドレス設定変更部35を新たに備える点、仮想マシンVMに仮想マシン設定変更部(図7ではA1,A2)が備えられる点で他の実施形態と構成が異なる。なお、プロセス制御システム100cのその他の構成については他の実施形態と同様である。そのため、プロセス制御システム100c全体の説明は省略して、アドレス記憶部25c、アドレス重複管理部26c、通知部28c、アドレス設定変更部35及び仮想マシン設定変更部について説明する。
アドレス記憶部25cは、アドレスの情報をテーブル(アドレステーブル)として記憶する。アドレステーブルには、少なくとも仮想マシンVM(例えば、仮想マシンVM1及び仮想マシンVM2)に割り当てられているIPアドレスが登録されている。
図8は、第4の実施形態におけるアドレステーブルの一例を示す図である。図8に示すように、第4の実施形態におけるアドレステーブルには、IPアドレスに対応付けて割当情報が登録されている。割当情報は、対応するIPアドレスが割り当て済みのIPアドレスであるか否かを示す情報である。図8に示す例では、IPアドレス“XXX”及び“YYY”が割り当て済みであることが示され、IPアドレス“AAA”及び“BBB”がまだ割り当てられていないことが示されている。
図7に戻って情報処理装置20cの説明を続ける。
アドレス設定変更部35は、仮想マシンVMに対して、IPアドレス変更等のネットワーク設定変更、アプリケーションのエンジニアリング作業(仮想マシンVM上で動作するアプリケーションを、IPアドレス変更に適合する構成に変更する作業)及び仮想マシンVMの再起動を行う。
アドレス重複管理部26cは、IPアドレスの重複を管理する。具体的には、アドレス重複管理部26cは、アドレステーブルに登録されている未割当のIPアドレスのアドレス重複判定処理をアドレス重複判定部24に実行させる。
通知部28cは、通知部28と同様の処理に加えて、IPアドレスが変更された旨をUI部40に通知する。
仮想マシン設定変更部A1,A2は、自身の仮想マシンVMのIPアドレスの設定を変更する。
図9は、第4の実施形態における情報処理装置20cの処理の流れを示すフローチャートである。なお、図9の処理開始時には、実デバイス21はリンクダウンしており、仮想スイッチ制御部27が仮想スイッチ通信路を遮断しているものとする。図9において、図3と同様の処理については図3と同様の符号を付して説明を省略する。
IPアドレスの重複があった場合(ステップS104-YES)、アドレス重複管理部26cはアドレステーブルを参照し、未割当のIPアドレスがあるか否かを判定する(ステップS301)。具体的には、アドレス重複管理部26cは、アドレステーブルの割当情報の項目が“未割当”となっているレコードがある場合、未割当のIPアドレスがあると判定する。一方、アドレステーブルの割当情報の項目が“未割当”となっているレコードがない場合には、アドレス重複管理部26cは未割当のIPアドレスがないと判定する。
未割当のIPアドレスがない場合(ステップS301-NO)、情報処理装置20cはステップS105以降の処理を実行する。
一方、未割当のIPアドレスがある場合(ステップS301-YES)、アドレス重複管理部26cはアドレステーブルに登録されている未割当のIPアドレスを1つ選択する(ステップS302)。具体的には、まずアドレス重複管理部26cは、アドレステーブルの割当情報の項目が“未割当”となっているレコードを1つ選択する。次に、アドレス重複管理部26cは、選択したレコードのIPアドレスの項目に登録されているIPアドレスを選択する。なお、“未割当”となっているレコードが複数ある場合、アドレス重複管理部26cはランダムでIPアドレスを選択してもよいし、順番にIPアドレスを選択してもよい。
アドレス重複管理部26cは、選択したIPアドレスの重複判定をアドレス重複判定部24に指示する。アドレス重複判定部24は、アドレス重複管理部26cからの指示に従って、選択されたIPアドレスのアドレス重複判定処理を実行する(ステップS303)。具体的には、アドレス重複判定部24は、ターゲットIPに、選択されたIPアドレスを指定し、ARPリクエストのパケットを、実デバイス21を介して外部ネットワークN1にブロードキャスト送信する。
アドレス重複判定部24は、ARPリクエストに対する返信があった場合には、IPアドレスの重複があったと判定する。一方、アドレス重複判定部24は、ARPリクエストのパケットをブロードキャスト送信した直後から予め定められたタイムアウト期間の間、ARPリクエストに対する返信がない場合には、IPアドレスの重複がないと判定する。このタイムアウト期間の値は、アドレス重複管理部26cが保有しており、作業者がUI部40を経由してタイムアウト期間の値を設定することができる。アドレス重複判定部24は、判定結果をアドレス重複管理部26cに通知する。アドレス重複管理部26cは、IPアドレスの重複があったか否かの情報をアドレス重複判定部24からの通知により得る(ステップS304)。
IPアドレスの重複があった場合(ステップS304-YES)、アドレス重複管理部26cはアドレステーブルを参照し、選択したIPアドレスの割当情報の項目を“未割当”から“割当済み”に変更する(ステップS305)。その後、アドレス重複管理部26cはステップS301以降の処理を実行する。
一方、IPアドレスの重複が一つもない場合(ステップS304-NO)、アドレス重複管理部26cはアドレス設定変更部35に対して変更対象となるIPアドレス(重複したIPアドレス)及び変更後の新しいIPアドレスを通知する。アドレス設定変更部35は、重複したIPアドレスが割り当てられている仮想マシンVM(例えば、仮想マシンVM1)上の仮想マシン設定変更部A1に対し、仮想デバイス30経由で変更後の新しいIPアドレスの情報を通知する(ステップS306)。このように、アドレス設定変更部35は、未割当のアドレスの重複判定の結果、未割当のアドレスの重複が検知されなかった場合に未割当のアドレスをアドレスが重複した仮想マシンVMのアドレスとして設定する。
これにより、仮想マシン設定変更部A1は、自身の仮想マシンVM1のIPアドレスの設定を変更する。仮想マシン設定変更部A1は、設定の変更が完了すると、設定変更が完了した旨をアドレス設定変更部35に通知する。アドレス設定変更部35は、仮想マシン設定変更部A1から通知された設定変更が完了した旨をアドレス重複管理部26cに通知する。これにより、アドレス重複管理部26cは、仮想スイッチ制御部27経由で仮想スイッチ通信路の遮断を解除する。すなわち、仮想スイッチ制御部27は、仮想スイッチ29を制御して、仮想スイッチ通信路を接続する(ステップS307)。アドレス重複管理部26cは、上記で得たIPアドレス重複情報やIPアドレス変更情報を、通知部28cを介して、UI部40に通知する(ステップS308)。
以上のように構成されたプロセス制御システム100cによれば、第1の実施形態と同様の効果を得ることができる。
さらに、プロセス制御システム100cでは、IPアドレスの重複が検知された場合、自動でIPアドレスの再設定を行うことで、IPアドレスの重複を回避する。したがって、IPアドレスの重複の影響により通信が行えなくなってしまうことを回避することができる。
<変形例>
リンク監視部23、アドレス重複判定部24、アドレス記憶部25c、アドレス重複管理部26c、仮想スイッチ制御部27、通知部28c、アドレス設定変更部35は、仮想化部22で実現されてもよい。
UI部40は、情報処理装置20cに備えられてもよい。
第4の実施形態における仮想マシンVMのIPアドレスの設定変更の処理は、第2の実施形態及び第3の実施形態において実行されてもよい。
(第5の実施形態)
第4の実施形態のように、アドレス設定変更部35が仮想デバイス経由で仮想マシンVMのIPアドレスを変更できてしまうと、外部ネットワーク機器からIPアドレスが変更される危険性をはらむことになり、セキュリティ上問題がある。そこで、第5の実施形態では、ホストOS-仮想マシンVM間専用の通信路を使い通信を行うことで比較的安全にIPアドレスの変更が行う構成について説明する。例えば、Hyper-Vでは、仮想マシンVM socketを用いることでこのようなことを実現できる。ただし、ホストOSから仮想マシンVMへ直接通信を行うには、ホストOSが仮想マシンVMを認識するためのID(仮想マシン名など)が必要になる。
図10は、第5の実施形態におけるプロセス制御システム100dのシステム構成を表す構成図である。プロセス制御システム100dは、情報処理装置20dが、アドレス記憶部25c及びアドレス設定変更部35に代えてアドレス記憶部25d及びアドレス設定変更部35dを備える点でプロセス制御システム100cと構成が異なる。なお、プロセス制御システム100dのその他の構成についてはプロセス制御システム100cと同様である。そのため、プロセス制御システム100d全体の説明は省略して、アドレス記憶部25d及びアドレス設定変更部35dについて説明する。
アドレス記憶部25dは、アドレスの情報をテーブル(アドレステーブル)として記憶する。アドレステーブルには、少なくとも仮想マシンVM(例えば、仮想マシンVM1及び仮想マシンVM2)に割り当てられているIPアドレスが登録されている。
図11は、第5の実施形態におけるアドレステーブルの一例を示す図である。図11に示すように、第5の実施形態におけるアドレステーブルには、ID、IPアドレス及び割当情報が登録されている。IDは、仮想マシンVMを一意に識別するための情報である。例えば、IDは、仮想マシンVMの名称であってもよい。図11に示す例では、ID“仮想マシンVM1”にはIPアドレス“XXX”が割り当て済みであることが示されている。
図10に戻って情報処理装置20dの説明を続ける。
アドレス設定変更部35dは、アドレステーブルに登録されているIDに基づいて、IDで識別される仮想マシンVMに対して、IPアドレス変更等のネットワーク設定変更、アプリケーションのエンジニアリング作業(仮想マシンVM上で動作するアプリケーションを、IPアドレス変更に適合する構成に変更する作業)及び仮想マシンVMの再起動を行う。
以上のように構成されたプロセス制御システム100dによれば、IPアドレスを変更する際に、ホストOS-仮想マシンVM間専用の通信路を使用して仮想マシンVMのIPアドレスを変更する。これにより、比較的安全にIPアドレスの変更が行うことが可能になる。
<変形例>
リンク監視部23、アドレス重複判定部24、アドレス記憶部25d、アドレス重複管理部26、仮想スイッチ制御部27、通知部28c、アドレス設定変更部35dは、仮想化部22で実現されてもよい。
UI部40は、情報処理装置20dに備えられてもよい。
<第1の実施形態から第5の実施形態に共通する変形例>
プロセス制御システム100~100dが備える物理マシンの数は限定されない。
プロセス制御システム100~100dが備える仮想マシンの数は限定されない。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
11,12…物理マシン, 13…物理スイッチ, 14,15,21…実デバイス, 20,20a,20b,20c,20d…情報処理装置, 22…仮想化部, 23…リンク監視部, 24…アドレス重複判定部, 25,25a,25c,25d…アドレス記憶部, 26,26c…アドレス重複管理部, 27、27b…仮想スイッチ制御部, 28,28c…通知部, 29…仮想スイッチ, 30,31…仮想デバイス, 32…仮想マシン監視部, 33…重複時ルールデータベース, 35,35d…アドレス設定変更部

Claims (9)

  1. ハードウェア上で必要な機能を仮想的に実現する仮想化部と、
    前記仮想化部上でプロセス制御システムの一部として機能し、アドレスが設定されている少なくとも1つの仮想マシンと、
    前記仮想マシンと前記ハードウェアに接続される外部ネットワークとを通信可能に接続し、又は通信不可能に切断する仮想スイッチ制御部と、
    前記ハードウェアに前記外部ネットワークが新たに接続されると、前記仮想マシンが前記外部ネットワークから切断されたままの状態であって、通信不可能な状態を保持しながら、前記外部ネットワークに対して前記仮想マシンの前記アドレスをブロードキャストで送信し、前記アドレスを送信してから所定期間内に前記外部ネットワークからの返信があった場合には、前記アドレスの重複があったと判定し、前記所定期間内に前記外部ネットワークからの返信がない場合には、前記アドレスの重複がないと判定することにより、前記ハードウェアを介して前記外部ネットワークに対してアドレスの重複判定を行うアドレス重複判定部と、
    前記アドレスの重複が検知された場合、前記仮想スイッチ制御部に、前記仮想マシンと前記外部ネットワークとの切断を継続させ、少なくともアドレスが重複した前記仮想マシンと前記外部ネットワークが通信不可能な状態を保持し続けるアドレス重複管理部と、
    を備える情報処理装置。
  2. 前記アドレス重複管理部は、前記アドレスの重複が検知されなかった場合、前記仮想マシンと前記外部ネットワークとを通信可能に接続させる、請求項1に記載の情報処理装置。
  3. 前記仮想マシンのアドレスを取得する仮想マシン監視部をさらに備え、
    前記アドレス重複判定部は、前記仮想マシン監視部によって取得された前記アドレスの重複判定を行う、請求項1又は2に記載の情報処理装置。
  4. 前記仮想スイッチ制御部は、アドレスが重複した前記仮想マシンと前記外部ネットワークとの通信を切断するために、アドレスが重複した前記仮想マシンと前記外部ネットワークとの通信を遮断又はフィルタリングする、請求項1から3のいずれか一項に記載の情報処理装置。
  5. アドレスが重複した前記仮想マシンのアドレスを変更するアドレス設定変更部をさらに備え、
    前記アドレス重複判定部は、前記仮想マシンと前記外部ネットワークとの切断の継続中に、未割当のアドレスが既に使用されているか否かを判定するために前記外部ネットワークに対して前記未割当のアドレスの重複判定を行い、
    前記アドレス設定変更部は、前記仮想マシンと前記外部ネットワークとの切断の継続中に、前記未割当のアドレスの重複判定の結果、前記未割当のアドレスの重複が検知されなかった場合に前記未割当のアドレスをアドレスが重複した前記仮想マシンのアドレスとして設定し、
    前記アドレス重複管理部は、前記未割当のアドレスが、アドレスが重複した前記仮想マシンのアドレスとして設定された後に、前記仮想マシンと前記外部ネットワークとの切断を解除し、接続する、請求項1から4のいずれか一項に記載の情報処理装置。
  6. 前記アドレスの重複が検知されたことを外部に通知する通知部をさらに備える、請求項1から5のいずれか一項に記載の情報処理装置。
  7. ハードウェアに外部ネットワークが新たに接続されると、前記ハードウェア上で必要な機能を仮想的に実現する仮想化部上でプロセス制御システムの一部として機能し、アドレスが設定されている少なくとも1つの仮想マシンが前記外部ネットワークから切断されたままの状態であって、通信不可能な状態を保持しながら、前記外部ネットワークに対して前記仮想マシンの前記アドレスをブロードキャストで送信し、前記アドレスを送信してから所定期間内に前記外部ネットワークからの返信があった場合には、前記アドレスの重複があったと判定し、前記所定期間内に前記外部ネットワークからの返信がない場合には、前記アドレスの重複がないと判定することにより、前記ハードウェアを介して前記外部ネットワークに対してアドレスの重複判定を行うアドレス重複判定ステップと、
    前記アドレスの重複が検知された場合、前記仮想マシンと前記外部ネットワークとの切断を継続させ、少なくともアドレスが重複した前記仮想マシンと前記外部ネットワークが通信不可能な状態を保持し続けるアドレス重複管理ステップと、
    を有するアドレス重複管理方法。
  8. 前記仮想マシンと前記外部ネットワークとの切断の継続中に、未割当のアドレスが既に使用されているか否かを判定するために前記外部ネットワークに対して前記未割当のアドレスの重複判定を行うステップと、
    前記仮想マシンと前記外部ネットワークとの切断の継続中に、前記未割当のアドレスの重複判定の結果、前記未割当のアドレスの重複が検知されなかった場合に前記未割当のアドレスをアドレスが重複した前記仮想マシンのアドレスとして設定するステップと、
    前記未割当のアドレスが、アドレスが重複した前記仮想マシンのアドレスとして設定された後に、前記仮想マシンと前記外部ネットワークとの切断を解除し、接続するステップと、
    をさらに有する、請求項7に記載のアドレス重複管理方法。
  9. 前記未割当のアドレスの重複判定の結果、前記未割当のアドレスの重複が検知された場合に前記未割当のアドレスを割当済みに変更するステップと、
    前記仮想マシンと前記外部ネットワークとの切断の継続中に、未割当のアドレスの重複判定を繰り返し行うステップと、
    をさらに有する、請求項8に記載のアドレス重複管理方法。
JP2019209491A 2019-11-20 2019-11-20 情報処理装置及びアドレス重複管理方法 Active JP7234905B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019209491A JP7234905B2 (ja) 2019-11-20 2019-11-20 情報処理装置及びアドレス重複管理方法
US17/096,374 US11575650B2 (en) 2019-11-20 2020-11-12 Information processing device, address duplication managing method, and non-transitory computer readable storage medium
CN202011295188.9A CN112825043A (zh) 2019-11-20 2020-11-18 信息处理装置、地址重复管理方法以及计算机可读取的非临时性记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019209491A JP7234905B2 (ja) 2019-11-20 2019-11-20 情報処理装置及びアドレス重複管理方法

Publications (2)

Publication Number Publication Date
JP2021082961A JP2021082961A (ja) 2021-05-27
JP7234905B2 true JP7234905B2 (ja) 2023-03-08

Family

ID=75907828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019209491A Active JP7234905B2 (ja) 2019-11-20 2019-11-20 情報処理装置及びアドレス重複管理方法

Country Status (3)

Country Link
US (1) US11575650B2 (ja)
JP (1) JP7234905B2 (ja)
CN (1) CN112825043A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7153942B2 (ja) * 2020-08-17 2022-10-17 ラトナ株式会社 情報処理装置、方法、コンピュータプログラム、及び、記録媒体

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001230789A (ja) 2000-02-17 2001-08-24 Hitachi Ltd Tcp/ipネットワークにおけるipアドレス重複検出方法
US20150095505A1 (en) 2013-09-30 2015-04-02 Vmware, Inc. Resolving network address conflicts
JP2015138292A (ja) 2014-01-20 2015-07-30 横河電機株式会社 プロセス制御装置及びその更新方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006295532A (ja) * 2005-04-11 2006-10-26 Kyocera Mita Corp 情報処理装置、ネットワーク接続プログラム、ネットワーク接続方法
US20100174811A1 (en) * 2009-01-05 2010-07-08 Microsoft Corporation Network isolation and identity management of cloned virtual machines
US9817695B2 (en) * 2009-04-01 2017-11-14 Vmware, Inc. Method and system for migrating processes between virtual machines
JP5190084B2 (ja) * 2010-03-30 2013-04-24 株式会社日立製作所 仮想マシンのマイグレーション方法およびシステム
US8363656B2 (en) * 2010-09-15 2013-01-29 International Business Machines Corporation Multiple virtual machines sharing a single IP address
US9183028B1 (en) * 2010-09-30 2015-11-10 Amazon Technologies, Inc. Managing virtual computing nodes
US20120287931A1 (en) * 2011-05-13 2012-11-15 International Business Machines Corporation Techniques for securing a virtualized computing environment using a physical network switch
CN102710814B (zh) * 2012-06-21 2016-03-30 北京奇虎科技有限公司 虚拟机ip地址的控制方法及装置
US9100216B2 (en) * 2012-07-23 2015-08-04 Cisco Technology, Inc. System and method for scaling IPv6 on a three-tier network architecture at a large data center
US10382401B1 (en) * 2013-02-26 2019-08-13 Zentera Systems, Inc. Cloud over IP for enterprise hybrid cloud network and security
US9634948B2 (en) * 2013-11-07 2017-04-25 International Business Machines Corporation Management of addresses in virtual machines
US10103995B1 (en) * 2015-04-01 2018-10-16 Cisco Technology, Inc. System and method for automated policy-based routing
JP2017130125A (ja) * 2016-01-22 2017-07-27 富士通株式会社 情報処理装置、管理装置および情報処理装置の切替方法
JP6338726B1 (ja) * 2017-03-28 2018-06-06 三菱電機インフォメーションシステムズ株式会社 サーバ管理装置、サーバ管理プログラムおよびサーバ管理方法
WO2018179413A1 (ja) * 2017-03-31 2018-10-04 三菱電機株式会社 情報処理装置および情報処理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001230789A (ja) 2000-02-17 2001-08-24 Hitachi Ltd Tcp/ipネットワークにおけるipアドレス重複検出方法
US20150095505A1 (en) 2013-09-30 2015-04-02 Vmware, Inc. Resolving network address conflicts
JP2015138292A (ja) 2014-01-20 2015-07-30 横河電機株式会社 プロセス制御装置及びその更新方法

Also Published As

Publication number Publication date
US20210152514A1 (en) 2021-05-20
CN112825043A (zh) 2021-05-21
JP2021082961A (ja) 2021-05-27
US11575650B2 (en) 2023-02-07

Similar Documents

Publication Publication Date Title
US20090172151A1 (en) Dynamic network configuration
US9185053B2 (en) Virtual fault tolerant ethernet appliance and method of operation
CN105337952B (zh) 用于抑制主机频繁迁移的方法和装置
JP2014182596A (ja) 仮想マシンの移動終了を検出する装置、方法、及びプログラム
EP3073336B1 (en) Process control system
US8351340B2 (en) Method for detecting a proxy ARP agent in secure networks having embedded controllers
US11516229B2 (en) Control device and control system
JP7234905B2 (ja) 情報処理装置及びアドレス重複管理方法
US20230208682A1 (en) Securing a connection from a device to a server
JP4964666B2 (ja) 冗長化された通信経路を切り替える計算機、プログラム及び方法
JP5018969B2 (ja) 通信制御プログラム、通信制御装置、通信制御システムおよび通信制御方法
JP2013167922A (ja) 冗長化通信システムおよび冗長化通信方法
JP2010016500A (ja) 通信システム、ネットワーク機器及びそれらに用いる通信復旧方法並びにそのプログラム
EP2600568B1 (en) Relay server and relay communication system
JP2007124258A (ja) ネットワーク中継プログラム、ネットワーク中継方法、ネットワーク中継装置および通信制御プログラム
US20160156501A1 (en) Network apparatus with inserted management mechanism, system, and method for management and supervision
TWI703835B (zh) 用於虛擬機網路卡之供裝監控系統及方法
US20130242723A1 (en) Data processing apparatus, data transceiver apparatus, and method for controlling data transmission and reception
JP7111125B2 (ja) 通信処理システム、通信処理装置およびその制御方法と制御プログラム
KR102347620B1 (ko) 리던던트 난방, 환기 및 공조 제어 시스템
US11962653B2 (en) Device monitoring method, device monitoring apparatus, and recording medium for transmitting messages containing device control commands based on predetermined conditions
JP5814518B2 (ja) リモート監視システムにおけるエージェント実装方式
JP5630611B2 (ja) ネットワーク監視システムおよびその監視対象装置の登録方法
JP5392380B2 (ja) ネットワークデバイスに対する設定情報の設定を制御する制御装置
CN113472836A (zh) 通信处理装置、存储介质和通信处理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210608

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220301

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220616

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220823

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221031

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221031

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221109

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221115

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230206

R150 Certificate of patent or registration of utility model

Ref document number: 7234905

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150