# Peers can not see each others both local network and internet

this is maybe a common question with many answers on internet but i can not make it work, so please help to give some hints

i setup the Ethereum private blockchain with the steps at https://github.com/ethereum/go-ethereum/wiki/Connecting-to-the-network the genesis.json file

{
"config": {
"chainId": 15,
"eip155Block": 0,
"eip158Block": 0
},
"difficulty": "200000000",
"gasLimit": "2100000",
"alloc": {
"7df9a875a174b3bc565e6424a0050ebc1b2d1d82": { "balance": "300000" },
"f41c74c9ae680c1aa78f42e5647a62f353b7bdde": { "balance": "400000" }
}
}


init the block on the 1st node, 2nd node , and 3rd node with same genesis file

geth --datadir "path\to\genesis" init genesis.json


everything look OK

then first node has been started with basic parameter like :

geth --datadir "firstNode" --identity "firstNode" --networkid 65535000 --rpc --rpcport 8545 --nat "any" --rpccorsdomain "*" console


the second pc in local network has been started with bootNodes of the 1st node enode address

even in the same network, these PC did not see each others with admin.peers cli, instead, i see other enode of outside internet

when i try to connect my 3rd PC ( my laptop) from internet to my private block chain that is same networkid (say 65535000)

i supposed that i just need one 24/7 running node as bootnode so that other PC can start with that bootnode the the peers will automatically find out themselves as many document said. but in really i can not form up a private chain for testing, i tried many solutions but the issue still there, what i'm mining now is others blocks from internet , not my blocks

is there any option i'm missing?

checked: - my internet router open the uPNP by default - the two pc need to addPeer(enode address) manually to see each others, without manual peering, they could not find themselves even they are boot up with the bootnodes from geth cli at startup - from outside, i'm trying to peer with my local private chain by connecting to the 1st node with the public IP (check on router) on enode address, but doesn't help

I'm so confusing now and don't know what exactly to look up

Thanks for your help

• Hi there. Can you ping the external (3rd) machine from those on the local network, and vice versa? Which ports have you forwarded on your router/NAT box? (You need TCP/UDP 30303, by default.) – Richard Horrocks Jul 7 '17 at 9:45
• after struggling with --verbosity debug mode , i found that the hand saking between peers happened but all were discard because of genesis block invalid, dont know why since they all use the same genesis json file, the chain id in the file set to 15 but some node = 3 , some = 5 . is there any way to get the genesis block default from the bootnode which are init the first block that have chain id =15 as it set in the file for connecting peers ? - the bootnode has been put in the DMZ of router with TCP/UDP port =30303 through firewald in centos, all pc can ping each others – Leean Jul 7 '17 at 11:58