{"action":"created","comment":{"url":"https://api.github.com/repos/weaveworks/weave/pulls/comments/54507893","id":54507893,"diff_hunk":"@@ -0,0 +1,81 @@\n+---\n+title: Weave Net FAQ\n+layout: default\n+---\n+\n+\n+\n+###Q:How do I obtain the IP of a specific container when I'm using Weave?\n+\n+Use `weave ps` to see which address was allocated to a container on a Weave network.  \n+\n+See [Address Allocation](/site/features/address-allocation.md).\n+\n+\n+###Q: How do I expose one of my containers to the outside world?\n+\n+Exposing a container to the outside world is described in [Exposing Services to the Outside](/site/using-weave/service-export.md).\n+\n+\n+###Q: My dockerized app needs to check the request of a remote IP. Can I manually change the IP of a container?\n+\n+\n+You can manually change the IP of a container using [Classless Inter-Domain Routing or CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). \n+\n+For more information, refer to [Manually Specifying the IP Address of a Container](/site/using-weave/manual-ip-address.md). \n+\n+\n+###Q:Can I connect my existing 'legacy' network with a Weave container network?\n+\n+Yes you can. \n+\n+Let's say you have a Weave network that runs on hosts A, B, C. and an additional host, that we'll call P, where neither Weave nor Docker are running.  You want to connect from a process running on host P to a specific container running on host B on the Weave network. \n+\n+Since the Weave network is completely separate from any network that P is connected to, you cannot connect the container using the container's IP address. Instead you will have to expose a port on the container on host B. \n+\n+You can read about how to expose a port in [Service Exporting](/site/using-weave/service-export.md)\n+\n+\n+###Q: Why am I seeing the same IP address assigned to two different containers on different hosts?\n+\n+Under normal circumstances, this should not happen, but it can occur if  `weave forget` and `weave rmpeer` was run on more than one host. \n+\n+You cannot call `weave rmpeer` on more than one host. The address space, which was owned by the stale peer cannot be left dangling, and as a result it gets reassigned. In this instance, the address is reassigned to the peer on which `weave rmpeer` was run. Therefore, if you run `weave forget` and then `weave rmpeer` on more than one host at a time, it results in duplicate IPs on more than one host.\n+\n+Once the peers detect the inconsistency, they log the error and drop the connection that supplied the inconsistent data. The rest of the peers will carry on with their view of the world, but the network will not function correctly.\n+\n+Some peers may be able to communicate their claim to the others before they run `rmpeer` (i.e. it's a race), so what you can expect is a few cliques of peers that are still talking to each other, but repeatedly dropping attempted connections with peers in other cliques.\n+\n+\n+###Q: What is the best practise for resetting a node that goes out of service?\n+\n+When a node goes out of service, the best option is to call `weave rmpee` on one host and then `weave forget` on all the other hosts.\n+\n+This will provide enough time for Weave to re-establish its peer connections across the mesh network. \n+\n+\n+###Q: What about Weave's performance? Are software defined network overlays just as fast as native networking?\n+\n+All virtualization techniques have some overhead, and unless your system is completely bottlenecked on the network you won't notice this during normal operation. ","path":"site/faq.md","position":59,"original_position":59,"commit_id":"8d27e019add3a61732717fc209d85faad2db4c78","original_commit_id":"8d27e019add3a61732717fc209d85faad2db4c78","user":{"login":"bboreham","id":8125524,"avatar_url":"https://avatars.githubusercontent.com/u/8125524?v=3","gravatar_id":"","url":"https://api.github.com/users/bboreham","html_url":"https://github.com/bboreham","followers_url":"https://api.github.com/users/bboreham/followers","following_url":"https://api.github.com/users/bboreham/following{/other_user}","gists_url":"https://api.github.com/users/bboreham/gists{/gist_id}","starred_url":"https://api.github.com/users/bboreham/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bboreham/subscriptions","organizations_url":"https://api.github.com/users/bboreham/orgs","repos_url":"https://api.github.com/users/bboreham/repos","events_url":"https://api.github.com/users/bboreham/events{/privacy}","received_events_url":"https://api.github.com/users/bboreham/received_events","type":"User","site_admin":false},"body":"Suggest \"All virtualization techniques have some overhead, and Weave's overhead is usually around 2-3%. Unless your system is completely bottlenecked on the network you won't notice this during normal operation.\"","created_at":"2016-03-01T01:03:29Z","updated_at":"2016-03-01T01:03:29Z","html_url":"https://github.com/weaveworks/weave/pull/1979#discussion_r54507893","pull_request_url":"https://api.github.com/repos/weaveworks/weave/pulls/1979","_links":{"self":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/comments/54507893"},"html":{"href":"https://github.com/weaveworks/weave/pull/1979#discussion_r54507893"},"pull_request":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/1979"}}},"pull_request":{"url":"https://api.github.com/repos/weaveworks/weave/pulls/1979","id":59728542,"html_url":"https://github.com/weaveworks/weave/pull/1979","diff_url":"https://github.com/weaveworks/weave/pull/1979.diff","patch_url":"https://github.com/weaveworks/weave/pull/1979.patch","issue_url":"https://api.github.com/repos/weaveworks/weave/issues/1979","number":1979,"state":"open","locked":false,"title":"[WIP] 1.5 edit and updates to Weave Net User's Guide: WP rollout","user":{"login":"abuehrle","id":13420383,"avatar_url":"https://avatars.githubusercontent.com/u/13420383?v=3","gravatar_id":"","url":"https://api.github.com/users/abuehrle","html_url":"https://github.com/abuehrle","followers_url":"https://api.github.com/users/abuehrle/followers","following_url":"https://api.github.com/users/abuehrle/following{/other_user}","gists_url":"https://api.github.com/users/abuehrle/gists{/gist_id}","starred_url":"https://api.github.com/users/abuehrle/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abuehrle/subscriptions","organizations_url":"https://api.github.com/users/abuehrle/orgs","repos_url":"https://api.github.com/users/abuehrle/repos","events_url":"https://api.github.com/users/abuehrle/events{/privacy}","received_events_url":"https://api.github.com/users/abuehrle/received_events","type":"User","site_admin":false},"body":"@awh @bboreham created three files for fastdp: how it works, using fastdp and viewing connections. \r\n\r\nPlease have a look and make sure I haven't missed anything technically.  Probably still needs a typo sweep, as I am using Eclipse to edit/write.\r\n\r\n(Ignore the README.md addition, I added that by mistake and nothings changed but spaces.  The majority of that file will go into the overview, BTW. )\n\n<!-- Reviewable:start -->\n[<img src=\"https://reviewable.io/review_button.svg\" height=\"40\" alt=\"Review on Reviewable\"/>](https://reviewable.io/reviews/weaveworks/weave/1979)\n<!-- Reviewable:end -->\n","created_at":"2016-02-17T23:44:06Z","updated_at":"2016-03-01T01:03:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"e5a1d976b3a0e9295ab8704f335716c5b0cc4d68","assignee":{"login":"awh","id":1504438,"avatar_url":"https://avatars.githubusercontent.com/u/1504438?v=3","gravatar_id":"","url":"https://api.github.com/users/awh","html_url":"https://github.com/awh","followers_url":"https://api.github.com/users/awh/followers","following_url":"https://api.github.com/users/awh/following{/other_user}","gists_url":"https://api.github.com/users/awh/gists{/gist_id}","starred_url":"https://api.github.com/users/awh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/awh/subscriptions","organizations_url":"https://api.github.com/users/awh/orgs","repos_url":"https://api.github.com/users/awh/repos","events_url":"https://api.github.com/users/awh/events{/privacy}","received_events_url":"https://api.github.com/users/awh/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/weaveworks/weave/pulls/1979/commits","review_comments_url":"https://api.github.com/repos/weaveworks/weave/pulls/1979/comments","review_comment_url":"https://api.github.com/repos/weaveworks/weave/pulls/comments{/number}","comments_url":"https://api.github.com/repos/weaveworks/weave/issues/1979/comments","statuses_url":"https://api.github.com/repos/weaveworks/weave/statuses/8d27e019add3a61732717fc209d85faad2db4c78","head":{"label":"weaveworks:1-5-edits","ref":"1-5-edits","sha":"8d27e019add3a61732717fc209d85faad2db4c78","user":{"login":"weaveworks","id":9976052,"avatar_url":"https://avatars.githubusercontent.com/u/9976052?v=3","gravatar_id":"","url":"https://api.github.com/users/weaveworks","html_url":"https://github.com/weaveworks","followers_url":"https://api.github.com/users/weaveworks/followers","following_url":"https://api.github.com/users/weaveworks/following{/other_user}","gists_url":"https://api.github.com/users/weaveworks/gists{/gist_id}","starred_url":"https://api.github.com/users/weaveworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weaveworks/subscriptions","organizations_url":"https://api.github.com/users/weaveworks/orgs","repos_url":"https://api.github.com/users/weaveworks/repos","events_url":"https://api.github.com/users/weaveworks/events{/privacy}","received_events_url":"https://api.github.com/users/weaveworks/received_events","type":"Organization","site_admin":false},"repo":{"id":23059575,"name":"weave","full_name":"weaveworks/weave","owner":{"login":"weaveworks","id":9976052,"avatar_url":"https://avatars.githubusercontent.com/u/9976052?v=3","gravatar_id":"","url":"https://api.github.com/users/weaveworks","html_url":"https://github.com/weaveworks","followers_url":"https://api.github.com/users/weaveworks/followers","following_url":"https://api.github.com/users/weaveworks/following{/other_user}","gists_url":"https://api.github.com/users/weaveworks/gists{/gist_id}","starred_url":"https://api.github.com/users/weaveworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weaveworks/subscriptions","organizations_url":"https://api.github.com/users/weaveworks/orgs","repos_url":"https://api.github.com/users/weaveworks/repos","events_url":"https://api.github.com/users/weaveworks/events{/privacy}","received_events_url":"https://api.github.com/users/weaveworks/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/weaveworks/weave","description":"Simple, resilient multi-host Docker networking","fork":false,"url":"https://api.github.com/repos/weaveworks/weave","forks_url":"https://api.github.com/repos/weaveworks/weave/forks","keys_url":"https://api.github.com/repos/weaveworks/weave/keys{/key_id}","collaborators_url":"https://api.github.com/repos/weaveworks/weave/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/weaveworks/weave/teams","hooks_url":"https://api.github.com/repos/weaveworks/weave/hooks","issue_events_url":"https://api.github.com/repos/weaveworks/weave/issues/events{/number}","events_url":"https://api.github.com/repos/weaveworks/weave/events","assignees_url":"https://api.github.com/repos/weaveworks/weave/assignees{/user}","branches_url":"https://api.github.com/repos/weaveworks/weave/branches{/branch}","tags_url":"https://api.github.com/repos/weaveworks/weave/tags","blobs_url":"https://api.github.com/repos/weaveworks/weave/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/weaveworks/weave/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/weaveworks/weave/git/refs{/sha}","trees_url":"https://api.github.com/repos/weaveworks/weave/git/trees{/sha}","statuses_url":"https://api.github.com/repos/weaveworks/weave/statuses/{sha}","languages_url":"https://api.github.com/repos/weaveworks/weave/languages","stargazers_url":"https://api.github.com/repos/weaveworks/weave/stargazers","contributors_url":"https://api.github.com/repos/weaveworks/weave/contributors","subscribers_url":"https://api.github.com/repos/weaveworks/weave/subscribers","subscription_url":"https://api.github.com/repos/weaveworks/weave/subscription","commits_url":"https://api.github.com/repos/weaveworks/weave/commits{/sha}","git_commits_url":"https://api.github.com/repos/weaveworks/weave/git/commits{/sha}","comments_url":"https://api.github.com/repos/weaveworks/weave/comments{/number}","issue_comment_url":"https://api.github.com/repos/weaveworks/weave/issues/comments{/number}","contents_url":"https://api.github.com/repos/weaveworks/weave/contents/{+path}","compare_url":"https://api.github.com/repos/weaveworks/weave/compare/{base}...{head}","merges_url":"https://api.github.com/repos/weaveworks/weave/merges","archive_url":"https://api.github.com/repos/weaveworks/weave/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/weaveworks/weave/downloads","issues_url":"https://api.github.com/repos/weaveworks/weave/issues{/number}","pulls_url":"https://api.github.com/repos/weaveworks/weave/pulls{/number}","milestones_url":"https://api.github.com/repos/weaveworks/weave/milestones{/number}","notifications_url":"https://api.github.com/repos/weaveworks/weave/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/weaveworks/weave/labels{/name}","releases_url":"https://api.github.com/repos/weaveworks/weave/releases{/id}","deployments_url":"https://api.github.com/repos/weaveworks/weave/deployments","created_at":"2014-08-18T05:19:07Z","updated_at":"2016-02-29T23:42:52Z","pushed_at":"2016-02-29T23:09:02Z","git_url":"git://github.com/weaveworks/weave.git","ssh_url":"git@github.com:weaveworks/weave.git","clone_url":"https://github.com/weaveworks/weave.git","svn_url":"https://github.com/weaveworks/weave","homepage":"http://weave.works","size":11886,"stargazers_count":4064,"watchers_count":4064,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":258,"mirror_url":null,"open_issues_count":217,"forks":258,"open_issues":217,"watchers":4064,"default_branch":"master"}},"base":{"label":"weaveworks:master","ref":"master","sha":"31a964ba9b66077cc8ca78edd1fafc00f613339c","user":{"login":"weaveworks","id":9976052,"avatar_url":"https://avatars.githubusercontent.com/u/9976052?v=3","gravatar_id":"","url":"https://api.github.com/users/weaveworks","html_url":"https://github.com/weaveworks","followers_url":"https://api.github.com/users/weaveworks/followers","following_url":"https://api.github.com/users/weaveworks/following{/other_user}","gists_url":"https://api.github.com/users/weaveworks/gists{/gist_id}","starred_url":"https://api.github.com/users/weaveworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weaveworks/subscriptions","organizations_url":"https://api.github.com/users/weaveworks/orgs","repos_url":"https://api.github.com/users/weaveworks/repos","events_url":"https://api.github.com/users/weaveworks/events{/privacy}","received_events_url":"https://api.github.com/users/weaveworks/received_events","type":"Organization","site_admin":false},"repo":{"id":23059575,"name":"weave","full_name":"weaveworks/weave","owner":{"login":"weaveworks","id":9976052,"avatar_url":"https://avatars.githubusercontent.com/u/9976052?v=3","gravatar_id":"","url":"https://api.github.com/users/weaveworks","html_url":"https://github.com/weaveworks","followers_url":"https://api.github.com/users/weaveworks/followers","following_url":"https://api.github.com/users/weaveworks/following{/other_user}","gists_url":"https://api.github.com/users/weaveworks/gists{/gist_id}","starred_url":"https://api.github.com/users/weaveworks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/weaveworks/subscriptions","organizations_url":"https://api.github.com/users/weaveworks/orgs","repos_url":"https://api.github.com/users/weaveworks/repos","events_url":"https://api.github.com/users/weaveworks/events{/privacy}","received_events_url":"https://api.github.com/users/weaveworks/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/weaveworks/weave","description":"Simple, resilient multi-host Docker networking","fork":false,"url":"https://api.github.com/repos/weaveworks/weave","forks_url":"https://api.github.com/repos/weaveworks/weave/forks","keys_url":"https://api.github.com/repos/weaveworks/weave/keys{/key_id}","collaborators_url":"https://api.github.com/repos/weaveworks/weave/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/weaveworks/weave/teams","hooks_url":"https://api.github.com/repos/weaveworks/weave/hooks","issue_events_url":"https://api.github.com/repos/weaveworks/weave/issues/events{/number}","events_url":"https://api.github.com/repos/weaveworks/weave/events","assignees_url":"https://api.github.com/repos/weaveworks/weave/assignees{/user}","branches_url":"https://api.github.com/repos/weaveworks/weave/branches{/branch}","tags_url":"https://api.github.com/repos/weaveworks/weave/tags","blobs_url":"https://api.github.com/repos/weaveworks/weave/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/weaveworks/weave/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/weaveworks/weave/git/refs{/sha}","trees_url":"https://api.github.com/repos/weaveworks/weave/git/trees{/sha}","statuses_url":"https://api.github.com/repos/weaveworks/weave/statuses/{sha}","languages_url":"https://api.github.com/repos/weaveworks/weave/languages","stargazers_url":"https://api.github.com/repos/weaveworks/weave/stargazers","contributors_url":"https://api.github.com/repos/weaveworks/weave/contributors","subscribers_url":"https://api.github.com/repos/weaveworks/weave/subscribers","subscription_url":"https://api.github.com/repos/weaveworks/weave/subscription","commits_url":"https://api.github.com/repos/weaveworks/weave/commits{/sha}","git_commits_url":"https://api.github.com/repos/weaveworks/weave/git/commits{/sha}","comments_url":"https://api.github.com/repos/weaveworks/weave/comments{/number}","issue_comment_url":"https://api.github.com/repos/weaveworks/weave/issues/comments{/number}","contents_url":"https://api.github.com/repos/weaveworks/weave/contents/{+path}","compare_url":"https://api.github.com/repos/weaveworks/weave/compare/{base}...{head}","merges_url":"https://api.github.com/repos/weaveworks/weave/merges","archive_url":"https://api.github.com/repos/weaveworks/weave/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/weaveworks/weave/downloads","issues_url":"https://api.github.com/repos/weaveworks/weave/issues{/number}","pulls_url":"https://api.github.com/repos/weaveworks/weave/pulls{/number}","milestones_url":"https://api.github.com/repos/weaveworks/weave/milestones{/number}","notifications_url":"https://api.github.com/repos/weaveworks/weave/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/weaveworks/weave/labels{/name}","releases_url":"https://api.github.com/repos/weaveworks/weave/releases{/id}","deployments_url":"https://api.github.com/repos/weaveworks/weave/deployments","created_at":"2014-08-18T05:19:07Z","updated_at":"2016-02-29T23:42:52Z","pushed_at":"2016-02-29T23:09:02Z","git_url":"git://github.com/weaveworks/weave.git","ssh_url":"git@github.com:weaveworks/weave.git","clone_url":"https://github.com/weaveworks/weave.git","svn_url":"https://github.com/weaveworks/weave","homepage":"http://weave.works","size":11886,"stargazers_count":4064,"watchers_count":4064,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":258,"mirror_url":null,"open_issues_count":217,"forks":258,"open_issues":217,"watchers":4064,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/1979"},"html":{"href":"https://github.com/weaveworks/weave/pull/1979"},"issue":{"href":"https://api.github.com/repos/weaveworks/weave/issues/1979"},"comments":{"href":"https://api.github.com/repos/weaveworks/weave/issues/1979/comments"},"review_comments":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/1979/comments"},"review_comment":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/weaveworks/weave/pulls/1979/commits"},"statuses":{"href":"https://api.github.com/repos/weaveworks/weave/statuses/8d27e019add3a61732717fc209d85faad2db4c78"}}}}