【メモ】VMwareでWindows7(ovf)を起動してみた

やりたかったこと

VMwareを使ってWindows7を起動させる

 

前提

・Windows10 64bit(ホストOS)

VMware Workstation 14 Playerインストール済み

 

やったこと

Windows7のvirtual machineをダウンロード

Free Virtual Machines from IE8 to MS Edge - Microsoft Edge Development

VMware Workstation 14 Playerで設定して起動

エラー発生

 

事象

PXE-E53: No boot filename received

Operating System not found

f:id:window5296:20171209223059p:plain

 

原因

ダウンロードした仮想マシンは、「仮想マシンを開く」で起動すべきだったが、「新規仮想マシンの作成」で起動しようとしたため

すでに仮想マシンとして使用できる状態であったにも関わらず、isoから取り込んで一から始めるときのように「新規仮想マシンの作成」を選んでしまったわけです

 

不正解

f:id:window5296:20171209224403p:plain

 

正解

ダウンロードして解凍するとvmdk, ovf, mfファイルが現れたんですけど

正直「なにこれ?」って感じで、とりあえず新規作成しちゃいました

こんなノリで仕事でやってたらぶっ○されますね

f:id:window5296:20171209224710p:plain

 

ちなみに...

  • vmdk

VMDK (Virtual Machine Disk) is a file format that describes containers for virtual hard disk drives to be used in virtual machines like VMware Workstation or VirtualBox.

https://en.wikipedia.org/wiki/VMDK

  • ovf

OVF(Open Virtualization Format)とは,異なる仮想化ソフト同士で仮想マシンのイメージ・ファイルを相互にやりとりできるようにするための標準フォーマットです。

http://itpro.nikkeibp.co.jp/article/Keyword/20090410/328215/

  •  vmdkとovfの違い

一般に、OVF ファイルは仮想マシンとそのディスクの両方を記述しますが、VMDK 記述子ファイルは仮想ディスクのファイル/デバイスのみを記述します。OVF ファイルは VMDK ディスク イメージを参照できますが、VMDK 記述子を参照できません。

https://kb.vmware.com/s/article/2105838

 

結果

Windowsが起動しました

f:id:window5296:20171209225221p:plain

f:id:window5296:20171209225725p:plain

 

所感

アホすぎる......

こんな初歩的なミスで数時間費やしました

仮想OS初心者なので許してください

【共有】JNSA主催セミナー:これからのIT人材のキャリアを考える〜サイバーセキュリティの視点から〜(引用資料のリンク集)

JNSA主催セミナー:これからのIT人材のキャリアを考える〜サイバーセキュリティの視点から〜」で言及されていた公開資料をいくつかピックアップしました。

connpass.com

 

・組織のセキュリティ体制について

isog-j.org

 

キャリアパス事例集

www.ipa.go.jp

 

・キャリアデザイン入門(基礎・専門)

 

・辻伸弘氏の著書

 

・資格

japan.isc2.org

www.isaca.gr.jp

 

【感想】

超有益でした。しかも無料って素晴らしい。 

セキュリティの第一線で活躍されている方の考え方や本音を聞く機会なんてまずないですからね。似たようなのがあればまた参加します。

 

【印象に残ったキーワード】

「価値のある遠回り」

いま私が挑戦していること(セキュリティ)は、正直なところ目の前の実務ではあまり活かせません。

とはいえ、自分が楽しいと思える&より専門性を高めたいと思える分野ではあるので、地道に続けてスキルをつけていこうと思います。価値のある遠回りだと信じて...。

【メモ】サイバーセキュリティプログラミング 3章 OSError: [WinError 10013]

対象

3章 3.3 IPレイヤーのデコード

sniffer_ip_header_decode.py

 

事象

sniffer_ip_header_decode.pyを実行したところ以下のエラーが発生

OSError: [WinError 10013] アクセス許可で禁じられた方法でソケットにアクセスしようとしました。

 

原因

On Windows Vista/7, with UAC, administrator accounts run programs in unprivileged mode by default.

Programs must prompt for administrator access before they run as administrator, with the ever-so-familiar UAC dialog. Since Python scripts aren't directly executable, there's no "Run as Administrator" context menu option.

socket.error: [Errno 10013] An attempt was made to access a socket in a way forbidden by its access permissions

unprivileged... あっ... そういうことっすか。

管理者権限がなかったのでうまく動かなかったようです。

こんなことに1時間費やしてしまうとは...

 

対策

管理者権限で実行する。

私の場合はSpyderで実行していたのでSpyderを管理者権限で起動するように設定しました。

 

結果

f:id:window5296:20171104205511p:plain

パケットを捕まえてくれました。

 

所感

やっぱりエラーは英語でぐぐるべし。日本語だとあまり検索に引っ掛かりません。

 

書籍

 

【Excel】VBAでマインスイーパー作ってみた(コードあり)

以下、過去記事の追記修正版 です。

Excel VBAにトライしてみた

身近なところからプログラミングを始めたいという方におすすめのVBA。 Excelさえあればプログラムをつくる&動かすことができるので気軽に始められます。(一般的な言語だと開発環境を構築しないといけないので結構大変です)

以前、VBAの勉強会に参加した後、勉強がてらマインスイーパーを作っていたのでそれを公開したいと思います。

 

画面レイアウト

爆弾の設置箇所はランダム。セルをクリックすると、当該セルに隣接する爆弾の数に応じて数値を表示します。

f:id:window5296:20160611213552p:plain

爆弾をクリックしたら赤くなります。

f:id:window5296:20160611213557p:plain

 

?

ソースコード

いろいろとツッコミどころのあるコードですが書き直したくないのでこのまま晒します。

各自修正してくださいね。

標準モジュール



'初期化処理
Public Sub initialize()
    Randomize '乱数系列の初期化
    
    Range("A10").Select '初期選択セル
    Range("M2").Value = bomNum
    
    '対象セルを塗りつぶす & 爆弾解除
    For i = 1 To celNum
        For j = 1 To celNum
        
            Cells(i, j).Interior.Color = RGB(0, 115, 176)
            Cells(i, j).Font.Color = RGB(0, 0, 0)
            Cells(i, j).Value = ""
            
        Next
    Next

    '爆弾の設置箇所を決定する
    For i = 1 To bomNum
    
        Dim ranNum(2) As Integer
        ranNum(1) = Int((celNum) * Rnd + 1) '乱数 行
        ranNum(2) = Int((celNum) * Rnd + 1) '乱数 列
        
        '既に爆弾がセットされている場合
        If Cells(ranNum(1), ranNum(2)).Value = "A" Then
            
            'スキップ
            i = i - 1
            
        Else
        
            ' 爆弾セット
            Cells(ranNum(1), ranNum(2)).Value = "A"
            Cells(ranNum(1), ranNum(2)).Font.Color = RGB(0, 115, 176)
        
        End If
    
    Next
End Sub

' 爆発処理
Public Sub explosion()

    For i = 1 To celNum
        For j = 1 To celNum
        
            Cells(i, j).Interior.Color = RGB(255, 0, 0)
            Cells(i, j).Font.Color = RGB(0, 0, 0)
            
            If Cells(i, j).Value = "A" Then
                Cells(i, j).Value = "★"

            End If
            
        Next
    Next
        
End Sub

標準モジュール2


Global Const celNum = 9 'セル幅
Global Const bomNum = 15 '爆弾の数

Sheet


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    
    On Error Resume Next
    
    'リセットボタンだった場合
    If Target.Value = "R" Then
        Call initialize
        Exit Sub
    End If
    
    
    '爆弾だった場合
    If Target.Value = "A" Then
        Call explosion
        Exit Sub
    End If
    
    '範囲外
    If Target.Row > celNum Or Target.Column > celNum Then
        Exit Sub
    End If
    
    '通常セルの場合
    Dim rowN As Integer
    Dim columnN As Integer
    Dim count As Integer
    count = 0
    
    rowN = Target.Row
    columnN = Target.Column
    
    For i = -1 To 1
        For j = -1 To 1
        
            ' 選択セル同士の比較はしない
            If Not (i = 0 And j = 0) Then
            
                If Not (rowN + i < 1 Or rowN + i > celNum Or columnN + j < 1 Or columnN + j > celNum) Then
                    If Cells(rowN + i, columnN + j).Value = "A" Then
                        
                        count = count + 1
                        
                    End If
                    
                End If
            
            End If
        
        Next
    Next
    
    If Not count = 0 Then
        Target.Value = count
    End If
    
    Target.Interior.Color = RGB(142, 209, 224)
    
End Sub

ThisWorkBook


Private Sub Workbook_Open()
        
    Call initialize
    
End Sub

 

エディターもExcel搭載のもので、自動的にエラーチェックもしてくれます。

(Alt+F11で起動します)

f:id:window5296:20160611213601p:plain

 

だいぶ前に書いた記事であるにも関わらず、一定数のアクセスがあったため今回こちらのブログで再公開することになりました。意外に需要があるのかな。

【過去問解説】平成29年度春期 応用情報技術者試験 ネットワーク(午後 問5)

平成29年度春期 応用情報技術者試験 午後問5

問5 レイヤ3スイッチの故障対策

難易度:★★★普通

設問1

a:どのノードに対してpingコマンドを実行したのかが問われています。DNSサーバの経路障害を疑う一文が解答欄aの直前にあるため、DNSサーバとの通信を調査したいことが分かります。

したがって答えはa:イです。

b:OSPFがルーティングプロトコルであることを知っていれば、その内容を知らなくても解答できるはずです。ルーティングプロトコルを設定すれば、ルータ間の経路情報を自動的に交換することが可能となります。この方式は、経路情報を管理者が事前に設定する"静的"経路制御と対をなすものであり、"動的"経路制御というものです。

したがって答えはb:コです。

c:問題文をよく見ると、PCのデフォルトゲートウェイは図1から変更していないとの記述があります(27ページ4行目)。図1では、PCから一番近いL3SWのポートはL3SW1のp10となっており、図2ではこのポートに171.16.2.250と明記されています。

したがって解答はc:オです。

d:L3SW1のp1が故障しているため、L3SW1を経由したPCからのサーバアクセスは不可能となります。したがって、PCがサーバにアクセスするためにはL3SW2を経由しなければなりません。つまり、PCから「ファイルサーバにアクセスしたい」というパケットが到着したときには「L3SW2を訪ねてください」とPCに伝えるためにルーティングテーブルを更新する必要があります

よって答えはd:カです。

e:サーバにアクセスしようとするPCはL3SW1の故障を知らないため、デフォルトゲートウェイであるL3SW1にパケットを送ります。しかし、L3SW1経由ではサーバアクセスできないため、L3SW1がこの事実を送信元ホストであるPCに伝達する必要があります。このような場合に、最適ではない経路を使用しているホストに対して最適な経路情報を通知する機能がICMPリダイレクトです

よって解答はe:クとなります。

?

設問2(1)

K君のPCでpingコマンドを実行した理由が問われています。いま、J君のPCからは業務サーバを利用できているがK君のPCからは利用できない状態です。この事象をOSI参照モデルをもとに考えてみると、「利用できるという状態=ネットワーク層のレベルで接続できている+ネットワーク層より上位層が正常に動作している」と切り分けることができます。

IPアドレスを使ってpingコマンドを実行することで相手先ホストにIPパケットが到達するかどうか(=ネットワーク層のレベルで接続できているか)を調べることができます。pingコマンドの実行の結果、パケットが到達しない場合は経路上に何らかの問題があるといえますし、反対に、パケットが到達すればネットワーク層の段階では問題なく接続できているといえるでしょう。

したがって、解答としては「業務サーバへの経路に障害があるかどうかを確認するため」となります。


設問2(2)

問題に答える前に、J君がDNS周りの障害であると判断した根拠が何なのか考えていきましょう。まず問題文に書かれている事象を整理します。

  • 業務サーバは正しく動作しているが、一部のサーバからは利用できておらず、IPアドレスをもとにしたpingコマンドを実行すると正しく到達していること。
  • 他の社員から、ファイルサーバや営業支援サーバも利用できないという連絡があった。

これらのことから以下のことが分かります。

  • 業務サーバ、ファイルサーバ、営業支援サーバは正常に動作している。
  • 人によって利用できないサーバが異なる。
  • 業務サーバ、ファイルサーバ、営業支援サーバいずれについてもIPアドレスによる通信は正常である(業務サーバへのping結果からの類推)

これらのことから、IPアドレスを使用した通信は正しく行われているが、それ以外の何かを使った通信ができていないと言えそうです。つまり、FQDNの名前解決が行えていないのです。例えば業務サーバに「Gyomu-Server」という名前を付け、それとIPアドレスとを紐づけていたとします。DNSが正しく動作していれば、PCから「Gyomu-Server」へアクセスがあった場合、それと紐づくIPアドレス172.16.1.1をPCに伝えることで正しく通信できることになるわけです。

さて、問題に戻りましょう。DNSサーバが利用できない状況でなぜサーバを利用できているのでしょうか。答えは簡単、DNSサーバを使わずに各種サーバにアクセスしているためです。サーバにアクセスするたびにDNSに問い合わせるのは非効率的ですので、PCはDNS情報を一時的にPC内に保持しています(キャッシュ)。

したがって解答は「PCにDNSのキャッシュが残っているから」です。

 

設問3

L3SW1のp1故障時にルーティングテーブルがどのように更新されるかが問われています。P1が故障しているのですから、それに対応する項番1の内容を変えなければなりません。設問1のdの解答より、各種サーバにアクセスするためには172.16.2.251にアクセスする必要があります。L3SW1にサーバ向けのパケットが到着したとき、そのパケットは172.16.2.251方向に転送されるのが適当です。

したがって、VLANインターフェースはp10と紐づく「172.168.2.250」、VLAN名は「VLAN20」となります

 

設問4(準備中)

準備中です。

解説について

・解答(太字部分)は

https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2017h29_1/2017h29h_ap_pm_ans.pdf から引用しています。

・明らかに解説が誤っている場合はご連絡ください。

問題冊子・公式解答

IPA 独立行政法人 情報処理推進機構:問題冊子・配点割合・解答例・採点講評(2017、平成29年)

参考文献

応用情報の勉強時に使用したテキスト(最新版)

にほんブログ村 資格ブログ IT系資格へ
にほんブログ村