| | 161 | = ubuntu-inner-AB = |
| | 162 | * see [../ping#ubuntu-outerrouterubuntu-inner-AB] |
| | 163 | |
| | 164 | * routing table 設定 |
| | 165 | 1. sudo ip route add default via 10.1.0.254 table 1 |
| | 166 | 1. sudo ip route add default via 10.2.0.254 table 2 |
| | 167 | * 注:デフォルトルートだけでなく、同一ネットワークに対するルートの設定も必要 => [#samenetwork] |
| | 168 | * routing policy 設定 |
| | 169 | 1. sudo ip rule add from 10.1.0.0/16 table 1 prio 1 |
| | 170 | 1. sudo ip rule add from 10.2.0.0/16 table 2 prio 2 |
| | 171 | * 上記[#centos-inner]と同様に、NICのIP or networkのどちらでも良い |
| | 172 | |
| | 173 | = ubuntu-inner-AA = |
| | 174 | * see [../ping#unexpected] |
| | 175 | |
| | 176 | * routing table 設定 |
| | 177 | 1. sudo ip route add default via 10.1.0.254 dev eth0 table 10 |
| | 178 | 1. sudo ip route add default via 10.1.0.254 dev eth1 table 20 |
| | 179 | * 注:デフォルトルートだけでなく、同一ネットワークに対するルートの設定も必要 => [#samenetwork] |
| | 180 | * routing policy 設定 |
| | 181 | 1. sudo ip rule add from 10.1.0.10 table 10 prio 1 |
| | 182 | 1. sudo ip rule add from 10.1.0.20 table 20 prio 2 |
| | 183 | |
| | 184 | * ~~requestに関しては、eth1(10.1.0.20)ではなくeth0(10.1.0.10)側に届いてしまう~~ |
| | 185 | * ~~VMなのが問題なのか、route設定がおかしいのか謎~~ |
| | 186 | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| | 187 | {{{ |
| | 188 | PING 10.1.0.20 (10.1.0.20) 56(84) bytes of data. |
| | 189 | 64 bytes from 10.1.0.20: icmp_seq=1 ttl=63 time=18.0 ms |
| | 190 | |
| | 191 | --- 10.1.0.20 ping statistics --- |
| | 192 | 1 packets transmitted, 1 received, 0% packet loss, time 0ms |
| | 193 | rtt min/avg/max/mdev = 18.019/18.019/18.019/0.000 ms |
| | 194 | }}} |
| | 195 | 1. ubuntu-outer:eth1 |
| | 196 | {{{ |
| | 197 | 03:21:26.529593 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| | 198 | 03:21:26.547598 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| | 199 | }}} |
| | 200 | 1. ubuntu-router:eth0 |
| | 201 | {{{ |
| | 202 | 03:21:26.528120 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| | 203 | 03:21:26.535301 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| | 204 | }}} |
| | 205 | 1. ubuntu-router:eth1 |
| | 206 | {{{ |
| | 207 | 03:21:26.529233 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| | 208 | 03:21:26.534766 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| | 209 | 03:21:26.535841 IP 10.1.0.254 > 10.1.0.10: ICMP redirect 10.1.0.110 to host 10.1.0.110, length 188 |
| | 210 | }}} |
| | 211 | 1. ubuntu-inner-AA:eth0 |
| | 212 | {{{ |
| | 213 | 03:21:26.516873 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| | 214 | 03:21:26.523308 IP 10.1.0.254 > 10.1.0.10: ICMP redirect 10.1.0.110 to host 10.1.0.110, length 188 |
| | 215 | }}} |
| | 216 | 1. ubuntu-inner-AA:eth1 |
| | 217 | {{{ |
| | 218 | 03:21:26.520911 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| | 219 | }}} |
| | 220 | |
| | 221 | * 数分放置したところrequestもeth1に届くようになった => cacheのせい? |
| | 222 | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| | 223 | 1. ubuntu-inner-AA:eth1 |
| | 224 | {{{ |
| | 225 | 03:31:16.124510 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 49704, seq 1, length 64 |
| | 226 | 03:31:16.125227 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 49704, seq 1, length 64 |
| | 227 | }}} |
| | 228 | |
| | 229 | * ubuntu-inner-AA上のrouting policyを削除したところ、前とは逆にeth1にrequest、eth0からreplyという状態になった。 |
| | 230 | * ubuntu-inner-AA:~$ sudo ip rule del prefer 1 |
| | 231 | * ubuntu-inner-AA:~$ sudo ip rule del prefer 2 |
| | 232 | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| | 233 | 1. ubuntu-inner-AA:eth1 |
| | 234 | {{{ |
| | 235 | 03:35:13.581262 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 58152, seq 1, length 64 |
| | 236 | }}} |
| | 237 | 1. ubuntu-inner-AA:eth0 |
| | 238 | {{{ |
| | 239 | 03:35:13.581520 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 58152, seq 1, length 64 |
| | 240 | }}} |
| | 241 | * ~~いよいよもって謎。~~ |
| | 242 | * これも数分放置したところ、eth0のみを通る状態に戻ったので、やはりcacheのせいと思われる |
| | 243 | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| | 244 | 1. ubuntu-inner-AA:eth0 |
| | 245 | {{{ |
| | 246 | 03:46:28.309953 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 16425, seq 1, length 64 |
| | 247 | 03:46:28.310817 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 16425, seq 1, length 64 |
| | 248 | }}} |
| | 249 | |
| | 250 | = 同一ネットワーク(netmask内)へのパケット = #samenetwork |
| | 251 | * default routeの設定だけでは、同一ネットワークへのパケットもGW(ubuntu-router:eth1)に届いてredirectされることになるので、良くない。 |
| | 252 | * ubuntu-inner-AB:~$ ping 10.1.0.20 -c 1 |
| | 253 | * ubuntu-inner-AB:eth0(10.1.0.30) <==> ubuntu-inner-AA(10.1.0.![1-2]0)と同一ネットワーク |
| | 254 | 1. ubuntu-inner-AB:eth0 |
| | 255 | {{{ |
| | 256 | 18:35:14.538758 IP 10.1.0.30 > 10.1.0.20: ICMP echo request, id 14357, seq 1, length 64 |
| | 257 | 18:35:14.542000 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| | 258 | }}} |
| | 259 | 1. ubuntu-inner-AA:eth1 |
| | 260 | {{{ |
| | 261 | 18:35:14.551525 IP 10.1.0.30 > 10.1.0.20: ICMP echo request, id 14357, seq 1, length 64 |
| | 262 | 18:35:14.551594 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| | 263 | 18:35:14.552225 IP 10.1.0.254 > 10.1.0.20: ICMP redirect 10.1.0.30 to host 10.1.0.30, length 92 |
| | 264 | }}} |
| | 265 | 1. ubuntu-router:eth1 |
| | 266 | {{{ |
| | 267 | 18:35:14.547829 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| | 268 | 18:35:14.548182 IP 10.1.0.254 > 10.1.0.20: ICMP redirect 10.1.0.30 to host 10.1.0.30, length 92 |
| | 269 | 18:35:14.548278 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| | 270 | }}} |
| | 271 | * これを回避するには、同じネットワークへのルートをtableに追加しておく |
| | 272 | 1. ubuntu-inner-AA:~$ sudo ip route add 10.1.0.0/16 dev eth0 table 10 |
| | 273 | 1. ubuntu-inner-AA:~$ sudo ip route add 10.1.0.0/16 dev eth1 table 20 |
| | 274 | * ubuntu-inner-AA:~$ ip route list table 10 |
| | 275 | {{{ |
| | 276 | 10.1.0.0/16 dev eth0 scope link |
| | 277 | default via 10.1.0.254 dev eth0 |
| | 278 | }}} |
| | 279 | * ubuntu-inner-AA:~$ ip route list table 20 |
| | 280 | {{{ |
| | 281 | 10.1.0.0/16 dev eth1 scope link |
| | 282 | default via 10.1.0.254 dev eth1 |
| | 283 | }}} |
| | 284 | |
| 239 | | |
| 240 | | = ubuntu-inner-AB = |
| 241 | | * see [../ping#ubuntu-outerrouterubuntu-inner-AB] |
| 242 | | |
| 243 | | * routing table 設定 |
| 244 | | 1. sudo ip route add default via 10.1.0.254 table 1 |
| 245 | | 1. sudo ip route add default via 10.2.0.254 table 2 |
| 246 | | * 注:デフォルトルートだけでなく、同一ネットワークに対するルートの設定も必要 => [#samenetwork] |
| 247 | | * routing policy 設定 |
| 248 | | 1. sudo ip rule add from 10.1.0.0/16 table 1 prio 1 |
| 249 | | 1. sudo ip rule add from 10.2.0.0/16 table 2 prio 2 |
| 250 | | * 上記[#centos-inner]と同様に、NICのIP or networkのどちらでも良い |
| 251 | | |
| 252 | | = ubuntu-inner-AA = |
| 253 | | * see [../ping#unexpected] |
| 254 | | |
| 255 | | * routing table 設定 |
| 256 | | 1. sudo ip route add default via 10.1.0.254 dev eth0 table 10 |
| 257 | | 1. sudo ip route add default via 10.1.0.254 dev eth1 table 20 |
| 258 | | * 注:デフォルトルートだけでなく、同一ネットワークに対するルートの設定も必要 => [#samenetwork] |
| 259 | | * routing policy 設定 |
| 260 | | 1. sudo ip rule add from 10.1.0.10 table 10 prio 1 |
| 261 | | 1. sudo ip rule add from 10.1.0.20 table 20 prio 2 |
| 262 | | |
| 263 | | * ~~requestに関しては、eth1(10.1.0.20)ではなくeth0(10.1.0.10)側に届いてしまう~~ |
| 264 | | * ~~VMなのが問題なのか、route設定がおかしいのか謎~~ |
| 265 | | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| 266 | | {{{ |
| 267 | | PING 10.1.0.20 (10.1.0.20) 56(84) bytes of data. |
| 268 | | 64 bytes from 10.1.0.20: icmp_seq=1 ttl=63 time=18.0 ms |
| 269 | | |
| 270 | | --- 10.1.0.20 ping statistics --- |
| 271 | | 1 packets transmitted, 1 received, 0% packet loss, time 0ms |
| 272 | | rtt min/avg/max/mdev = 18.019/18.019/18.019/0.000 ms |
| 273 | | }}} |
| 274 | | 1. ubuntu-outer:eth1 |
| 275 | | {{{ |
| 276 | | 03:21:26.529593 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| 277 | | 03:21:26.547598 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| 278 | | }}} |
| 279 | | 1. ubuntu-router:eth0 |
| 280 | | {{{ |
| 281 | | 03:21:26.528120 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| 282 | | 03:21:26.535301 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| 283 | | }}} |
| 284 | | 1. ubuntu-router:eth1 |
| 285 | | {{{ |
| 286 | | 03:21:26.529233 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| 287 | | 03:21:26.534766 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| 288 | | 03:21:26.535841 IP 10.1.0.254 > 10.1.0.10: ICMP redirect 10.1.0.110 to host 10.1.0.110, length 188 |
| 289 | | }}} |
| 290 | | 1. ubuntu-inner-AA:eth0 |
| 291 | | {{{ |
| 292 | | 03:21:26.516873 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 28200, seq 1, length 64 |
| 293 | | 03:21:26.523308 IP 10.1.0.254 > 10.1.0.10: ICMP redirect 10.1.0.110 to host 10.1.0.110, length 188 |
| 294 | | }}} |
| 295 | | 1. ubuntu-inner-AA:eth1 |
| 296 | | {{{ |
| 297 | | 03:21:26.520911 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 28200, seq 1, length 64 |
| 298 | | }}} |
| 299 | | |
| 300 | | * 数分放置したところrequestもeth1に届くようになった => cacheのせい? |
| 301 | | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| 302 | | 1. ubuntu-inner-AA:eth1 |
| 303 | | {{{ |
| 304 | | 03:31:16.124510 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 49704, seq 1, length 64 |
| 305 | | 03:31:16.125227 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 49704, seq 1, length 64 |
| 306 | | }}} |
| 307 | | |
| 308 | | * ubuntu-inner-AA上のrouting policyを削除したところ、前とは逆にeth1にrequest、eth0からreplyという状態になった。 |
| 309 | | * ubuntu-inner-AA:~$ sudo ip rule del prefer 1 |
| 310 | | * ubuntu-inner-AA:~$ sudo ip rule del prefer 2 |
| 311 | | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| 312 | | 1. ubuntu-inner-AA:eth1 |
| 313 | | {{{ |
| 314 | | 03:35:13.581262 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 58152, seq 1, length 64 |
| 315 | | }}} |
| 316 | | 1. ubuntu-inner-AA:eth0 |
| 317 | | {{{ |
| 318 | | 03:35:13.581520 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 58152, seq 1, length 64 |
| 319 | | }}} |
| 320 | | * ~~いよいよもって謎。~~ |
| 321 | | * これも数分放置したところ、eth0のみを通る状態に戻ったので、やはりcacheのせいと思われる |
| 322 | | * ubuntu-outer:~$ ping 10.1.0.20 -c 1 |
| 323 | | 1. ubuntu-inner-AA:eth0 |
| 324 | | {{{ |
| 325 | | 03:46:28.309953 IP 10.0.0.10 > 10.1.0.20: ICMP echo request, id 16425, seq 1, length 64 |
| 326 | | 03:46:28.310817 IP 10.1.0.20 > 10.0.0.10: ICMP echo reply, id 16425, seq 1, length 64 |
| 327 | | }}} |
| 328 | | |
| 329 | | = 同一ネットワーク(netmask内)へのパケット = #samenetwork |
| 330 | | * default routeの設定だけでは、同一ネットワークへのパケットもGW(ubuntu-router:eth1)に届いてredirectされることになるので、良くない。 |
| 331 | | * ubuntu-inner-AB:~$ ping 10.1.0.20 -c 1 |
| 332 | | * ubuntu-inner-AB:eth0(10.1.0.30) <==> ubuntu-inner-AA(10.1.0.![1-2]0)と同一ネットワーク |
| 333 | | 1. ubuntu-inner-AB:eth0 |
| 334 | | {{{ |
| 335 | | 18:35:14.538758 IP 10.1.0.30 > 10.1.0.20: ICMP echo request, id 14357, seq 1, length 64 |
| 336 | | 18:35:14.542000 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| 337 | | }}} |
| 338 | | 1. ubuntu-inner-AA:eth1 |
| 339 | | {{{ |
| 340 | | 18:35:14.551525 IP 10.1.0.30 > 10.1.0.20: ICMP echo request, id 14357, seq 1, length 64 |
| 341 | | 18:35:14.551594 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| 342 | | 18:35:14.552225 IP 10.1.0.254 > 10.1.0.20: ICMP redirect 10.1.0.30 to host 10.1.0.30, length 92 |
| 343 | | }}} |
| 344 | | 1. ubuntu-router:eth1 |
| 345 | | {{{ |
| 346 | | 18:35:14.547829 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| 347 | | 18:35:14.548182 IP 10.1.0.254 > 10.1.0.20: ICMP redirect 10.1.0.30 to host 10.1.0.30, length 92 |
| 348 | | 18:35:14.548278 IP 10.1.0.20 > 10.1.0.30: ICMP echo reply, id 14357, seq 1, length 64 |
| 349 | | }}} |
| 350 | | * これを回避するには、同じネットワークへのルートをtableに追加しておく |
| 351 | | 1. ubuntu-inner-AA:~$ sudo ip route add 10.1.0.0/16 dev eth0 table 10 |
| 352 | | 1. ubuntu-inner-AA:~$ sudo ip route add 10.1.0.0/16 dev eth1 table 20 |
| 353 | | * ubuntu-inner-AA:~$ ip route list table 10 |
| 354 | | {{{ |
| 355 | | 10.1.0.0/16 dev eth0 scope link |
| 356 | | default via 10.1.0.254 dev eth0 |
| 357 | | }}} |
| 358 | | * ubuntu-inner-AA:~$ ip route list table 20 |
| 359 | | {{{ |
| 360 | | 10.1.0.0/16 dev eth1 scope link |
| 361 | | default via 10.1.0.254 dev eth1 |
| 362 | | }}} |