# メインネットに接続する

## メインネット（Mainnet）に接続する

2015年7月30日にFrontierがリリースされ、Ethereumは本番ネットワーク（メインネット）の運用が開始されました。今後、Ethereumのブロックチェーン等のインフラを利用した分散アプリケーションは、このメインネット上にてスマートコントラクトが登録され動作していくことになります。本書ではここまで、個人用のテスト用のネットワーク（テスト・ネット）に繋いで、Gethクライアントを実際に操作しながらEthereumの概観を説明してきました。この節では実際にメインネットに接続していきます。

## メインネットへの接続

メインネットに接続する際のデータ用ディレクトリを事前に用意しておきます。

```bash
$ mkdir /home/ubuntu/mainnet_data
```

以下のコマンドを実行してメインネットに接続します。

```bash
$ geth --datadir "/home/ubuntu/mainnet_data" 2>> /home/ubuntu/mainnet_data/e01.log &
```

テスト・ネットに接続した際のコマンドとの違いは、`--networkid`、`--nodiscover` と `--genesis` のオプションを付加していないことになります。

## 接続状況を確認する

上記方法でgethの起動を行うとgethはEthereumのメインネットに接続している他のノードを探索し始め、見つけたノードから順次、P2P接続を開始し始めます。Gethのコンソールを立上げ`net.peerCount`コマンドを実行すると、自分のノードが他のいくつのノードと接続されているかを表示することが出来ます。（探索時間がかかるため起動から数分から十数分程度掛かるので注意ください。）

```
> net.peerCount
25
```

また、実際に接続されているノードの情報は`admin.peers`のコマンドで確認することが出来ます。

```
> admin.peers
[{
  Caps: 'eth/60, eth/61',
  ID: '99017abe7031b48a855b8e79fecb6c927cda88229354f21184d343941ae78ee261d0ccb9f9999f620f96bd729b2cb7c4e8cdf3218d71b016fe531ff439b81dcc',
  LocalAddress: '160.16.80.199:34057',
  Name: 'Geth/v1.0.2/linux/go1.4.2',
  RemoteAddress: '192.169.7.150:30303'
}, 
（中略）
{
  Caps: 'eth/60, eth/61',
  ID: '6f8c6cc4a878ed88e03c7a0ee01386e095fbc1bfd48352c7bec05142cc60795317b5b8c5e9afc9863a414541df4d5b1627a86418177857166171fd45497c75ab',
  LocalAddress: '160.16.80.199:41617',
  Name: 'Geth/v1.0.2/linux/go1.4.2',
  RemoteAddress: '83.77.31.183:30303'
} ]
>
```

## メインネット上での操作

メインネットで接続した`geth`上で、これまでに示した採掘や送金、スマートコントラクトの作成方法等の手順を行うことでメインネットでの操作が可能になります。ただし以下のことに注意してください。

* 採掘を始めるとまずメインネットでのブロックチェーン情報との同期が始まります。これは環境にもよりますが数日かかるものになります。
* ブロックチェーン情報は現在数ギガバイトのオーダーの容量となり今後も増え続けます。そのため`geth`起動時の`--data-dir`オプションで指定するディレクトリは容量の大きい領域（パーティション）内のディレクトリを指定することを推奨します。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://book.ethereum-jp.net/first_use/connect_to_livenet.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
