質問編集履歴

19

字数制限による、新たな投稿

2018/09/07 11:52

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -568,21 +568,11 @@
568
568
 
569
569
 
570
570
 
571
- ```
572
-
573
- エラーメッセージ
574
-
575
- ```
576
-
577
-
578
-
579
- ### 該当のソースコード
580
-
581
-
582
-
583
-
584
-
585
- ### 試したこと
571
+ ### 続き
572
+
573
+ 字数制限のため、[新たな投稿](https://teratail.com/questions/145425)をしました。
574
+
575
+
586
576
 
587
577
  ### 補足情報(FW/ツールのバージョンなど)
588
578
 

18

eth1のipがdhcp再リースで変更されたこと。

2018/09/07 11:52

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -232,7 +232,7 @@
232
232
 
233
233
  ```
234
234
 
235
- root@raspberrypi:/etc# ip route
235
+ root@raspberrypi:/# ip route
236
236
 
237
237
  default via 192.168.0.1 dev eth0 src 192.168.0.3 metric 202
238
238
 
@@ -360,8 +360,12 @@
360
360
 
361
361
  やっていることは、「特定ユーザのip route変更」です。squidのユーザーであるproxyのip route変更のため、このサイトを参考にし、
362
362
 
363
+ (当該記事は、異なるnicの切り替えでなく、単純な同一ネットワーク内でのgw変更である)
364
+
363
365
  http://d.hatena.ne.jp/rti7743/20150320/1426880601
364
366
 
367
+
368
+
365
369
  以下の操作をしました。
366
370
 
367
371
 
@@ -372,7 +376,7 @@
372
376
 
373
377
 
374
378
 
375
- #再起動で各nicのipが変動するための取得方法
379
+ #再起動で各nicのipが再dhcpリースにより変動するための自動的な取得方法
376
380
 
377
381
  #https://askubuntu.com/questions/430853/how-do-i-find-my-internal-ip-address
378
382
 
@@ -522,8 +526,6 @@
522
526
 
523
527
 
524
528
 
525
-
526
-
527
529
  ```
528
530
 
529
531
 
@@ -540,6 +542,10 @@
540
542
 
541
543
 
542
544
 
545
+ proxygwのルーティングテーブルは理解していますが、iptablesのmangleはまだ正しく理解していないところです。
546
+
547
+
548
+
543
549
  ###事前調査について
544
550
 
545
551
 

17

rpi再インストールで、squid + iptables でsub-gwへの転送ができなくなった。

2018/07/16 16:46

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -350,6 +350,196 @@
350
350
 
351
351
 
352
352
 
353
+ ## 発生している問題・エラーメッセージ)(その3)
354
+
355
+
356
+
357
+ rpiが起動しなくなり、再インストールしてから、squid + iptables で同様の設定までしたところ、何故かsub-gwへの転送ができなくなってしまいました。
358
+
359
+
360
+
361
+ やっていることは、「特定ユーザのip route変更」です。squidのユーザーであるproxyのip route変更のため、このサイトを参考にし、
362
+
363
+ http://d.hatena.ne.jp/rti7743/20150320/1426880601
364
+
365
+ 以下の操作をしました。
366
+
367
+
368
+
369
+ squidユーザのルーティングテーブル変更コード
370
+
371
+ ```
372
+
373
+
374
+
375
+ #再起動で各nicのipが変動するための取得方法
376
+
377
+ #https://askubuntu.com/questions/430853/how-do-i-find-my-internal-ip-address
378
+
379
+
380
+
381
+ eth0_ip=$(ip addr show eth0 |grep -v inet6 | awk '/inet/ {print $2}' | cut -d/ -f1) &&
382
+
383
+ eth1_ip=$(ip addr show eth1 |grep -v inet6 | awk '/inet/ {print $2}' | cut -d/ -f1)
384
+
385
+
386
+
387
+ proxy_route_tbl=proxygw &&
388
+
389
+ proxy_route_tbl_number=201 &&
390
+
391
+ echo 1 > /proc/sys/net/ipv4/ip_forward &&
392
+
393
+ echo "$proxy_route_tbl_number $proxy_route_tbl" >> /etc/iproute2/rt_tables &&
394
+
395
+ ip rule add fwmark 1 table $proxy_route_tbl &&
396
+
397
+ ip route add table $proxy_route_tbl default via 192.168.0.1 dev eth0 src $eth0_ip metric 203 &&
398
+
399
+ ip route add table $proxy_route_tbl default via 192.168.1.1 dev eth1 src $eth1_ip metric 202 &&
400
+
401
+ ip route add table $proxy_route_tbl 192.168.0.0/24 dev eth0 proto kernel scope link src $eth0_ip metric 203 &&
402
+
403
+ ip route add table $proxy_route_tbl 192.168.1.0/24 dev eth1 proto kernel scope link src $eth1_ip metric 202 &&
404
+
405
+ iptables -t mangle -P OUTPUT ACCEPT &&
406
+
407
+ iptables -t mangle -A OUTPUT -m owner --uid-owner proxy -j MARK --set-mark 1
408
+
409
+
410
+
411
+ # ip route,iptables 初期化用
412
+
413
+
414
+
415
+ ip rule del fwmark 1 table $proxy_route_tbl &&
416
+
417
+ ip route del table $proxy_route_tbl default via 192.168.0.1 dev eth0 src $eth0_ip metric 203 &&
418
+
419
+ ip route del table $proxy_route_tbl default via 192.168.1.1 dev eth1 src $eth1_ip metric 202 &&
420
+
421
+ ip route del table $proxy_route_tbl 192.168.0.0/24 dev eth0 proto kernel scope link src $eth0_ip metric 203 &&
422
+
423
+ ip route del table $proxy_route_tbl 192.168.1.0/24 dev eth1 proto kernel scope link src $eth1_ip metric 202 &&
424
+
425
+ iptables -F &&
426
+
427
+ iptables -F -t mangle
428
+
429
+
430
+
431
+ ```
432
+
433
+ また、変更後のip route,iptablesの設定は、
434
+
435
+
436
+
437
+ ip routeの変更後の設定
438
+
439
+ ```
440
+
441
+ root@raspberrypi:/# ip route show table main
442
+
443
+ default via 192.168.0.1 dev eth0 src 192.168.0.3 metric 202
444
+
445
+ default via 192.168.1.1 dev eth1 src 192.168.1.5 metric 203
446
+
447
+ 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 metric 202
448
+
449
+ 192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.5 metric 203
450
+
451
+
452
+
453
+ root@raspberrypi:/# ip route show table proxygw
454
+
455
+ default via 192.168.1.1 dev eth1 src 192.168.1.5 metric 202
456
+
457
+ default via 192.168.0.1 dev eth0 src 192.168.0.3 metric 203
458
+
459
+ 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 metric 203
460
+
461
+ 192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.5 metric 202
462
+
463
+ ```
464
+
465
+ iptablesの変更後の設定
466
+
467
+
468
+
469
+ ```
470
+
471
+ root@raspberrypi:/# iptables -L
472
+
473
+ Chain INPUT (policy ACCEPT)
474
+
475
+ target prot opt source destination
476
+
477
+
478
+
479
+ Chain FORWARD (policy ACCEPT)
480
+
481
+ target prot opt source destination
482
+
483
+
484
+
485
+ Chain OUTPUT (policy ACCEPT)
486
+
487
+ target prot opt source destination
488
+
489
+
490
+
491
+ root@raspberrypi:/# iptables -L -t mangle
492
+
493
+ Chain PREROUTING (policy ACCEPT)
494
+
495
+ target prot opt source destination
496
+
497
+
498
+
499
+ Chain INPUT (policy ACCEPT)
500
+
501
+ target prot opt source destination
502
+
503
+
504
+
505
+ Chain FORWARD (policy ACCEPT)
506
+
507
+ target prot opt source destination
508
+
509
+
510
+
511
+ Chain OUTPUT (policy ACCEPT)
512
+
513
+ target prot opt source destination
514
+
515
+ MARK all -- anywhere anywhere owner UID match proxy MARK set 0x1
516
+
517
+
518
+
519
+ Chain POSTROUTING (policy ACCEPT)
520
+
521
+ target prot opt source destination
522
+
523
+
524
+
525
+
526
+
527
+ ```
528
+
529
+
530
+
531
+ また、rpi側から見たtcpdumpの結果としては、
532
+
533
+ client-rpi間は、普通に (eth0のip):3128 への通信
534
+
535
+ rpi-通信先サーバ間は、例えば1.1.1.1宛にすると、
536
+
537
+ 物理nicがeth1でのdumpなのに、srcipがeth0のipとなり、
538
+
539
+ サーバからの応答を受信できません。
540
+
541
+
542
+
353
543
  ###事前調査について
354
544
 
355
545
 

16

2018/07/16 16:42

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -364,7 +364,11 @@
364
364
 
365
365
 
366
366
 
367
- また、英語の質問サイトで、本質問で挙げた3つのツールと「異なるnicに変更する方法」、「異なるネットワークに転送する方法」を調べても、これといったものはありませんでした。(普段のネット接続と別の通信にしたいなどの要望は多く、vpnでの対応が多いが、望ましくない。)
367
+ また、英語の質問サイトで、本質問で挙げた3つのツールと「異なるnicに変更する方法」、「異なるネットワークに転送する方法」を調べても、これといったものはありませんでした。
368
+
369
+
370
+
371
+ 普段のネット接続と別の通信にしたいなどの要望は多く、ip routeやvpnでの対応が多いが、設定を大幅に変更してしまい、普段のネットワーク環境を破壊する恐れがあるので、簡単な操作・変更で済みそうなプロキシーにより実現できると良い。
368
372
 
369
373
 
370
374
 

15

事前調査について

2018/07/15 15:52

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -348,6 +348,12 @@
348
348
 
349
349
 
350
350
 
351
+
352
+
353
+ ###事前調査について
354
+
355
+
356
+
351
357
  よく「linuxルータを作ろう」などという記事があり、
352
358
 
353
359
  異なるネットワーク間の通信を異なるnicでクリアしていますが、
@@ -358,6 +364,8 @@
358
364
 
359
365
 
360
366
 
367
+ また、英語の質問サイトで、本質問で挙げた3つのツールと「異なるnicに変更する方法」、「異なるネットワークに転送する方法」を調べても、これといったものはありませんでした。(普段のネット接続と別の通信にしたいなどの要望は多く、vpnでの対応が多いが、望ましくない。)
368
+
361
369
 
362
370
 
363
371
  ```

14

誤字脱字

2018/07/15 15:49

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -262,7 +262,7 @@
262
262
 
263
263
  client-pcがrpi-eth0 (192.168.0.3:3218)を宛先とする通信しかしない
264
264
 
265
- (client pcからwirsharkで確認)ので、
265
+ (client-pcからwiresharkで確認)ので、
266
266
 
267
267
  squidで処理したあとの通信をどうにかしてsubnet-Bに向ける事が重要です。
268
268
 

13

ツールのバージョンの追加

2018/07/15 15:46

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -16,10 +16,6 @@
16
16
 
17
17
  今、以下のようなネットワーク構成であるとする。
18
18
 
19
- (左側のaはスペースを反映させるための装飾で、特に意味はない。
20
-
21
- また、モバイル版では図が崩れて表示されます。)
22
-
23
19
 
24
20
 
25
21
  ```
@@ -50,11 +46,11 @@
50
46
 
51
47
 
52
48
 
53
- client-pc:ubuntu 18.04 (client-pcは今後増える可能性あり)
49
+ client-pc : ubuntu 18.04 (client-pcは今後増える可能性あり)
54
-
50
+
55
- rpi: raspberry pi stretch
51
+ rpi : raspberry pi stretch
56
-
52
+
57
- main-gw,sub-gw:市販のルータで、dhcpサーバ機能を持つ
53
+ main-gw,sub-gw : 市販のルータで、dhcpサーバ機能を持つ
58
54
 
59
55
 
60
56
 
@@ -383,3 +379,7 @@
383
379
  ### 補足情報(FW/ツールのバージョンなど)
384
380
 
385
381
  dante 1.52.10.2
382
+
383
+ iptables v1.6.0
384
+
385
+ squid3-3.5.23

12

ネットワーク構成図の修正その2

2018/07/15 15:35

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,3 @@
1
- ```
2
-
3
1
  ## 注意点
4
2
 
5
3
 
@@ -24,6 +22,8 @@
24
22
 
25
23
 
26
24
 
25
+ ```
26
+
27
27
  (subnet-A : 192.168.0.0/24)
28
28
 
29
29
  clien-pc(192.168.0.2)ー main-gw(192.168.0.1)ーwan1
@@ -46,6 +46,8 @@
46
46
 
47
47
  (subnet-B : 192.168.1.0/24)
48
48
 
49
+ ```
50
+
49
51
 
50
52
 
51
53
  client-pc:ubuntu 18.04 (client-pcは今後増える可能性あり)
@@ -381,5 +383,3 @@
381
383
  ### 補足情報(FW/ツールのバージョンなど)
382
384
 
383
385
  dante 1.52.10.2
384
-
385
- ```

11

ネットワーク構成図の修正

2018/07/15 15:30

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,3 +1,5 @@
1
+ ```
2
+
1
3
  ## 注意点
2
4
 
3
5
 
@@ -26,21 +28,21 @@
26
28
 
27
29
  clien-pc(192.168.0.2)ー main-gw(192.168.0.1)ーwan1
28
30
 
29
- a        |
31
+          |
30
-
32
+
31
- a        |
33
+          |
32
-
34
+
33
- a        |
35
+          |
34
-
36
+
35
- a rpi-eth0 (192.168.0.3)
37
+ rpi-eth0 (192.168.0.3)
36
-
38
+
37
- a | (rpi内部)
39
+ | (rpi内部)
38
-
40
+
39
- a rpi-eth1 (192.168.1.3)
41
+ rpi-eth1 (192.168.1.3)
40
-
42
+
41
- a |
43
+ |
42
-
44
+
43
- a sub-gw (192.168.1.1)ーwan2
45
+ sub-gw (192.168.1.1)ーwan2
44
46
 
45
47
  (subnet-B : 192.168.1.0/24)
46
48
 
@@ -379,3 +381,5 @@
379
381
  ### 補足情報(FW/ツールのバージョンなど)
380
382
 
381
383
  dante 1.52.10.2
384
+
385
+ ```

10

2018/07/15 15:28

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- ### 注意点
1
+ ## 注意点
2
2
 
3
3
 
4
4
 
@@ -8,7 +8,7 @@
8
8
 
9
9
 
10
10
 
11
- ### 前提・実現したいこと
11
+ ##前提・実現したいこと
12
12
 
13
13
 
14
14
 
@@ -16,7 +16,9 @@
16
16
 
17
17
  今、以下のようなネットワーク構成であるとする。
18
18
 
19
- (左側のaはスペースを反映させるための装飾で、特に意味はない)
19
+ (左側のaはスペースを反映させるための装飾で、特に意味はない
20
+
21
+ また、モバイル版では図が崩れて表示されます。)
20
22
 
21
23
 
22
24
 
@@ -86,7 +88,7 @@
86
88
 
87
89
 
88
90
 
89
- ### 発生している問題・エラーメッセージ(その1)
91
+ ## 発生している問題・エラーメッセージ(その1)
90
92
 
91
93
  danteについて
92
94
 
@@ -178,11 +180,11 @@
178
180
 
179
181
 
180
182
 
181
- まず、client-pcからのsocks proxy接続の結果について、
183
+ ####client-pcからのsocks proxy接続の結果について、
182
-
183
-
184
-
184
+
185
+
186
+
185
- すると、sub-gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
187
+ sub-gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
186
188
 
187
189
  subnet-B(eth1を経由とは書かない)を経由しているが、
188
190
 
@@ -212,7 +214,7 @@
212
214
 
213
215
 
214
216
 
215
- 次に、proxy server本体となるrpiを送信元とする結果について
217
+ ####proxy server本体となるrpiを送信元とする結果について
216
218
 
217
219
 
218
220
 
@@ -244,9 +246,11 @@
244
246
 
245
247
 
246
248
 
247
- ### 発生している問題・エラーメッセージ(というより、方法を模索中)(その2)
249
+ ## 発生している問題・エラーメッセージ(というより、方法を模索中)(その2)
248
-
250
+
251
+
252
+
249
- squid + iptablesについて
253
+ ###squid + iptablesについて
250
254
 
251
255
 
252
256
 
@@ -264,7 +268,7 @@
264
268
 
265
269
 
266
270
 
267
- 次に、中継プロキシ-通信先サーバの間の通信について
271
+ ####中継プロキシ-通信先サーバの間の通信について
268
272
 
269
273
 
270
274
 
@@ -344,6 +348,16 @@
344
348
 
345
349
 
346
350
 
351
+ よく「linuxルータを作ろう」などという記事があり、
352
+
353
+ 異なるネットワーク間の通信を異なるnicでクリアしていますが、
354
+
355
+ 今回はrpiをgwとする通常のルータの利用方法とは違うので、
356
+
357
+ それらの記事を参考にして、目標を達成することはできません。
358
+
359
+
360
+
347
361
 
348
362
 
349
363
  ```

9

ネットワークの質問なのに、説明不足と致命的なミス、さらに説明の流れがなっていないので、修正

2018/07/15 10:26

投稿

minsuke54
minsuke54

スコア4

test CHANGED
@@ -1 +1 @@
1
- squid + iptables , dante socks等を利用したプロキシー接続による異なるnic or ネットワークセグメント間のルーティングにつ
1
+ プロキシー接続による異なるネットワーク間のルーティングができな
test CHANGED
@@ -1,18 +1,28 @@
1
+ ### 注意点
2
+
3
+
4
+
5
+ この質問は、既に行った方法と、これからやろうと試みているが、理解が足りず進んでいない部分を並列して載せているので、読みづらいかと思います。
6
+
7
+ ご了承ください。
8
+
9
+
10
+
1
11
  ### 前提・実現したいこと
2
12
 
3
- (書いている途中ですが、何個か試したので、随時追加で投稿します。)
13
+
4
-
5
-
6
-
14
+
7
- 2つの回線があり、メインの回線とは別に、特定の操作をした時にサブ回線をるようにしたい。
15
+ 2つの回線があり、メインの回線とは別に、特定の操作をした時に通信がサブ回線を経由するようにしたい。
16
+
8
-
17
+ 今、以下のようなネットワーク構成であるとする。
18
+
9
- 今、以下のようなネットワーク構成であるとする。(左側のaはスペースを反映させるための装飾で、特に意味はない)
19
+ (左側のaはスペースを反映させるための装飾で、特に意味はない)
10
-
11
-
12
-
20
+
21
+
22
+
13
- (subnet A)
23
+ (subnet-A : 192.168.0.0/24)
14
-
24
+
15
- pc(192.168.0.2)--main gw(192.168.0.1)--wan1
25
+ clien-pc(192.168.0.2)main-gw(192.168.0.1)wan1
16
26
 
17
27
  a        |
18
28
 
@@ -20,39 +30,59 @@
20
30
 
21
31
  a        |
22
32
 
23
- a rpi eth0(192.168.0.3)
33
+ a rpi-eth0 (192.168.0.3)
24
-
34
+
25
- a |(rpi内部)
35
+ a | (rpi内部)
26
-
36
+
27
- a rpi eth1(192.168.1.3)
37
+ a rpi-eth1 (192.168.1.3)
28
-
38
+
29
- a |
39
+ a |
30
-
40
+
31
- a sub gw(192.168.0.1)--wan2
41
+ a sub-gw (192.168.1.1)wan2
32
-
42
+
33
- (subnet B)
43
+ (subnet-B : 192.168.1.0/24)
44
+
45
+
46
+
34
-
47
+ client-pc:ubuntu 18.04 (client-pcは今後増える可能性あり)
48
+
35
-
49
+ rpi: raspberry pi stretch
50
+
36
-
51
+ main-gw,sub-gw:市販のルータで、dhcpサーバ機能を持つ
52
+
53
+
54
+
55
+ rpiには、lanケーブルとusb-lanアダプタの2つのnicがついており、それぞれeth0,eth1である。また、ip割当は各ルータのdhcp機能により行った。rpiがルータの役割をする事はない。
56
+
57
+
58
+
37
- 特定の操作をしたときに、sub gwを経由してwan2を利用できればよいので、
59
+ 特定の操作をしたときに、client-pcの通信がsub-gwを経由してwan2を利用できればよいので、
38
-
60
+
39
- どんな方法でも良いが、client pcのip routeの変更やvpn設定はしたくない。
61
+ どんな方法でも良いが、client-pcのip routeの変更やvpn設定はしたくない。
40
-
62
+
63
+
64
+
41
- あくまでも特定の操作により、wan2が利用できることが望ましいので、
65
+ プログラムの通信を経由させる事を考えると、プログラム上でも人間でもな操作により、wan2が利用できることが望ましいので、方法はプロキシあたりになると思います。
42
-
66
+
43
- 大きな変更はプロキシとなるrpiに対して行うものとする。
67
+ そして、大きな変更はプロキシとなるrpiに対して行うものとして、
44
-
68
+
45
- (プログラムの通信も通すこと考えて)
69
+ client機器には負担かけたくない。
46
-
47
-
48
-
70
+
71
+
72
+
49
- 自分が考えている方法は、rpi eth0にプロキシ接続をして、ルーティングされる方法です。
73
+ 自分が考えている方法は、rpi-eth0にプロキシ接続をして、ルーティングされる方法です。
50
-
74
+
51
- やった方法は、「squid + iptables」 or 「dante socks proxy」でした。
75
+ やった方法は、 「dante socks proxy」で
76
+
52
-
77
+ 途中で諦めて、再び試しているのは、「squid + iptables」です。
78
+
79
+
80
+
53
- できなかったので、経緯を詳しく書きます。
81
+ できていので、経緯を詳しく書きます。
54
-
82
+
55
- 使用したツールについての動作や概念を正しく理解している自身はありません。
83
+ 使用したツールについての動作や概念を正しく理解している自信がないため、
84
+
85
+ 自分の理解を提示しつつ、説明を書いていきます。
56
86
 
57
87
 
58
88
 
@@ -62,6 +92,262 @@
62
92
 
63
93
  ```
64
94
 
95
+ ・subnet-B宛の通信はeth1を経由するが、それ以外はeth0経由となる。
96
+
97
+ ```
98
+
99
+
100
+
101
+ ### 該当のソースコード
102
+
103
+
104
+
105
+ 「danted.conf」の設定
106
+
107
+
108
+
109
+ ・入口と出口のnicを別々にした
110
+
111
+ ・カーネルパニック対策にローカルアドレスに対しても、client passを設定した。(https://qiita.com/hirohiro77/items/087c4d9e6b03050f70ad)
112
+
113
+
114
+
115
+ ```
116
+
117
+ # $Id: sockd.conf,v 1.52.10.2 2014/09/03 14:49:13 michaels Exp $
118
+
119
+ logoutput: syslog stdout /var/log/sockd.log
120
+
121
+ debug: 1
122
+
123
+ internal: eth0 port = 1080
124
+
125
+ external: eth1
126
+
127
+ socksmethod: none
128
+
129
+ clientmethod: none
130
+
131
+ user.privileged: root
132
+
133
+ user.unprivileged: nobody
134
+
135
+ timeout.connect: 30
136
+
137
+ client pass {
138
+
139
+ from: 192.168.0.0/24 port 1-65535 to: 0.0.0.0/0
140
+
141
+ }
142
+
143
+ client pass {
144
+
145
+ from: 127.0.0.1/32 port 1-65535 to: 0.0.0.0/0
146
+
147
+ }
148
+
149
+ socks pass {
150
+
151
+ from: 192.168.0.0/24 to: 0.0.0.0/0
152
+
153
+ }
154
+
155
+ ```
156
+
157
+
158
+
159
+ ### 試したこと
160
+
161
+
162
+
163
+ まず、firefoxのプロキシ設定を
164
+
165
+
166
+
167
+ protocol version : socks_v4 or v5
168
+
169
+ proxy server:eth0のipアドレス
170
+
171
+
172
+
173
+ に設定した。
174
+
175
+
176
+
177
+ また、上記に記載したdanted.confの設定により、eth0からeth1に転送できるようにしたつもり。
178
+
179
+
180
+
181
+ まず、client-pcからのsocks proxy接続の結果について、
182
+
183
+
184
+
185
+ すると、sub-gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
186
+
187
+ subnet-B(eth1を経由とは書かない)を経由しているが、
188
+
189
+ 1.1.1.1 (dns無しでhttp/httpsアクセス可能なアドレスで試行) には、
190
+
191
+ subnet-Aを経由しています。
192
+
193
+
194
+
195
+ tcpdumpで確認すると、
196
+
197
+ subnet-B宛は、tcpdump -i eth1 で確認できるが、
198
+
199
+ 1.1.1.1宛は、tcpdump -i eth0で、しかも送信元が192.168.1.3(eth1)のアドレスです。
200
+
201
+
202
+
203
+ つまり、danteの設定において、
204
+
205
+ 宛先がsubnet-B以外だと、必ずeth0から出力されるが、送信元がexternalで設定したeth1のアドレスとなり、応答パケット受信できないです。
206
+
207
+ この意味は、danteの設定において、interanlとexternalが異なる事は、
208
+
209
+ 送信先ネットワークセグメントの違いとは限らない、ということなので、
210
+
211
+ セグメント分けには利用できないです。
212
+
213
+
214
+
215
+ 次に、proxy server本体となるrpiを送信元とする結果について
216
+
217
+
218
+
219
+ rpiにssh loginしてpingすると、
220
+
221
+ subnet-B宛はeth1を通るが、
222
+
223
+ それ以外はeth0を経由しており、
224
+
225
+ 宛先選択には、danteの設定以前にosのルーティングテーブルが優先されているようです。(以下に貼り付けた)
226
+
227
+ danteなら異なるnic間の転送ができると期待しましたが、異なるネットワークセグメント間の転送はできないようです。
228
+
229
+
230
+
231
+ ```
232
+
233
+ root@raspberrypi:/etc# ip route
234
+
235
+ default via 192.168.0.1 dev eth0 src 192.168.0.3 metric 202
236
+
237
+ default via 192.168.1.1 dev eth1 src 192.168.1.3 metric 203
238
+
239
+ 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 metric 202
240
+
241
+ 192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.3 metric 203
242
+
243
+ ```
244
+
245
+
246
+
247
+ ### 発生している問題・エラーメッセージ(というより、方法を模索中)(その2)
248
+
249
+ squid + iptablesについて
250
+
251
+
252
+
253
+ 次に考えたことは、rpiにsquidを立て、client-pcからsquidに対する通信をiptablesによりsubnet-Bへルーティングする事です。http/httpsプロキシの挙動については知らないので、自分の理解を示しながら説明していきます。
254
+
255
+
256
+
257
+ http/httpsプロキシだと、本来の通信先サーバがどこでも、
258
+
259
+ client-pcがrpi-eth0 (192.168.0.3:3218)を宛先とする通信しかしない
260
+
261
+ (client pcからwirsharkで確認)ので、
262
+
263
+ squidで処理したあとの通信をどうにかしてsubnet-Bに向ける事が重要です。
264
+
265
+
266
+
267
+ 次に、中継プロキシ-通信先サーバの間の通信について
268
+
269
+
270
+
271
+ http/httpsのproxy接続では、中継プロキシ-通信先サーバの間の通信は、
272
+
273
+ メインの通信内容(layer5以上?)はclient-pcのもの、
274
+
275
+ tcpヘッダまでは中継プロキシのものになる。
276
+
277
+ よって、実質的には、中継プロキシであるrpiを発信元とする通信とみなして問題を考えれば良い。
278
+
279
+
280
+
281
+ そこで、このサイトの
282
+
283
+ https://www.virment.com/iptables-outline/
284
+
285
+ 「各チェインがどのパケットを対象とするかを表したイメージ図」を参考にすると、
286
+
287
+ 「squid」というローカルプロセスで処理された通信を、「OUTPUT」「POSTROUTING」で操作する必要があります。
288
+
289
+ そして、これらの説明には、
290
+
291
+
292
+
293
+ 引用文:
294
+
295
+
296
+
297
+ OUTPUTとPOSTROUTINGの違い
298
+
299
+
300
+
301
+ OUTPUTはローカルプロセスに処理されて出力されたパケット、すなわち送信元がホストマシンであるパケットを対象としているのに対し、POSTROUTINGは送信元がホストマシンであるとは限りません。例えば、FORWARDによって転送されたパケットも対象となります。
302
+
303
+
304
+
305
+ とあり、今回はrpi本体からの通信とみなして良いので、
306
+
307
+ 説明文中の「ホストマシン」だけを考えており、実質的には、「OUTPUT」だけを考えれば良いです。
308
+
309
+ しかし、これでは、iptablesから見た時に、
310
+
311
+ src ipはrpi本体、src portはランダムなため、
312
+
313
+ squidからの通信かどうか判別不能です。
314
+
315
+
316
+
317
+ さらに、iptablesのsubnet-Bへの転送設定を弄ろうとしているので、
318
+
319
+ OUTPUTで変な設定をすると、
320
+
321
+ rpiへのssh accessも含め、全てsubnet Bへ転送されて、
322
+
323
+ ssh切断の危険性もあります。
324
+
325
+
326
+
327
+ となると、iptablesをやめて、squidの設定に、
328
+
329
+ client-pcからのsquid宛はsubnet-Bへ転送させる設定をする必要があります。
330
+
331
+ そのような設定があるか探しましたが、転送先を変更する方法として、「tcp_outgoing_address」というものがありましたが、
332
+
333
+ 転送先nicではなく宛先ipが変更されるため、
334
+
335
+ 通信先サーバへのアクセスができないです。
336
+
337
+
338
+
339
+ 転送先nicとネットワークセグメントをうまく処理するツールがないため、
340
+
341
+ どうしようもありません。
342
+
343
+ 自分でツール開発できるスキルはありません。
344
+
345
+
346
+
347
+
348
+
349
+ ```
350
+
65
351
  エラーメッセージ
66
352
 
67
353
  ```
@@ -72,196 +358,10 @@
72
358
 
73
359
 
74
360
 
75
- 「danted.conf」の設定
76
-
77
-
78
-
79
- ・入口と出口のnicを別々にした
80
-
81
- ・カーネルパニック対策にローカルアドレスに対しても、client passを設定した。(https://qiita.com/hirohiro77/items/087c4d9e6b03050f70ad)
82
-
83
-
84
-
85
- ```
86
-
87
- # $Id: sockd.conf,v 1.52.10.2 2014/09/03 14:49:13 michaels Exp $
88
-
89
- logoutput: syslog stdout /var/log/sockd.log
90
-
91
- debug: 1
92
-
93
- internal: eth0 port = 1080
94
-
95
- external: eth1
96
-
97
- socksmethod: none
98
-
99
- clientmethod: none
100
-
101
- user.privileged: root
102
-
103
- user.unprivileged: nobody
104
-
105
- timeout.connect: 30
106
-
107
- client pass {
108
-
109
- from: 192.168.0.0/24 port 1-65535 to: 0.0.0.0/0
110
-
111
- }
112
-
113
- client pass {
114
-
115
- from: 127.0.0.1/32 port 1-65535 to: 0.0.0.0/0
116
-
117
- }
118
-
119
- socks pass {
120
-
121
- from: 192.168.0.0/24 to: 0.0.0.0/0
122
-
123
- }
124
-
125
- ```
126
-
127
361
 
128
362
 
129
363
  ### 試したこと
130
364
 
131
- まず、firefoxのプロキシ設定からsocks_v4 or v5でeth0に設定した。
132
-
133
- また、上記に記載したdanted.confの設定により、eth0からeth1に転送できるようにした。
134
-
135
- すると、sub gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
136
-
137
- subnet B(eth1を経由とは書かない)を経由しているが、
138
-
139
- 1.1.1.1 (dns無しでhttp/httpsアクセス可能なアドレスで試行) には、
140
-
141
- subnet Aを経由しています。
142
-
143
-
144
-
145
- tcpdumpで確認すると、
146
-
147
- subnet B宛は、tcpdump -i eth1 で確認できるが、
148
-
149
- 1.1.1.1宛は、tcpdump -i eth0で、しかも送信元が192.168.1.3(eth1)のアドレスです。
150
-
151
- つまり、danteの設定において、
152
-
153
- 宛先がsubnet B以外だと、必ずeth0から出力されるが、送信元がexternalで設定したeth1のアドレスとなり、応答パケット受信できないです。
154
-
155
- そして、interanlとexternalが異なる事は、送信先ネットワークセグメントの違いとはならないようなので、セグメント分けには利用できないです。
156
-
157
- また、rpiにssh loginしてpingすると、subnet B宛はeth1を通るが、
158
-
159
- それ以外はeth0を経由しており、
160
-
161
- 宛先選択には、danteの設定以前にosのルーティングテーブルが優先されているようです。(以下に貼り付けた)
162
-
163
- danteなら異なるnic間の転送ができると期待しましたが。
164
-
165
-
166
-
167
- ```
168
-
169
- root@raspberrypi:/etc# ip route
170
-
171
- default via 192.168.0.1 dev eth0 src 192.168.0.3 metric 202
172
-
173
- default via 192.168.1.1 dev eth1 src 192.168.1.3 metric 203
174
-
175
- 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.3 metric 202
176
-
177
- 192.168.1.0/24 dev eth1 proto kernel scope link src 192.168.1.3 metric 203
178
-
179
- ```
180
-
181
-
182
-
183
- ### 発生している問題・エラーメッセージ(その2)
184
-
185
- squid + iptablesについて、
186
-
187
-
188
-
189
- 次に考えたことは、rpiにsquidを立て、client pcからsquidに対する通信をiptablesによりsubnet Bへルーティングする事です。
190
-
191
-
192
-
193
- http/httpsプロキシだと、client pcがrpi (192.168.0.3:3218)を宛先とする通信しかしない(client pcからwirsharkで確認)ので、squidで処理したあとの通信をどう扱うかが重要です。
194
-
195
-
196
-
197
- 特に、このサイトの
198
-
199
- https://www.virment.com/iptables-outline/
200
-
201
- 「各チェインがどのパケットを対象とするかを表したイメージ図」を参考にすると、
202
-
203
- 「squid」というローカルプロセスで処理された通信を、「OUTPUT」「POSTROUTING」で操作する必要があります。
204
-
205
- そして、これらの説明には、
206
-
207
-
208
-
209
- 引用文:
210
-
211
-
212
-
213
- OUTPUTとPOSTROUTINGの違い
214
-
215
-
216
-
217
- OUTPUTはローカルプロセスに処理されて出力されたパケット、すなわち送信元がホストマシンであるパケットを対象としているのに対し、POSTROUTINGは送信元がホストマシンであるとは限りません。例えば、FORWARDによって転送されたパケットも対象となります。
218
-
219
-
220
-
221
- とあり、実質的には、「OUTPUT」だけを考えれば良いです。
222
-
223
- そして、http/https接続では、中継プロキシ-通信先サーバの間の通信は、
224
-
225
- tcpヘッダまでは中継プロキシのものになるので、
226
-
227
- iptablesから見た時に、src ip,portによりsquidからの通信かどうか判別不能です。
228
-
229
-
230
-
231
- だから、OUTPUTで変な設定をすると、rpiへのssh accessも含め、全てsubnet Bへ転送されて、ssh切断の危険性もあります。
232
-
233
-
234
-
235
- となると、squidの設定に、squid宛はsubnet Bへ転送させる設定をすることになりますが、tcp_outgoing_addressを設定すると、転送先nicが変更されるのではなく、宛先ipが変更されており、通信先サーバへのアクセスができないです。
236
-
237
-
238
-
239
- 転送先nicとネットワークセグメントをうまく処理するツールがないため、
240
-
241
- どうしようもありません。
242
-
243
- 自分でツール開発できるスキルはありません。
244
-
245
-
246
-
247
-
248
-
249
- ```
250
-
251
- エラーメッセージ
252
-
253
- ```
254
-
255
-
256
-
257
- ### 該当のソースコード
258
-
259
-
260
-
261
-
262
-
263
- ### 試したこと
264
-
265
365
  ### 補足情報(FW/ツールのバージョンなど)
266
366
 
267
367
  dante 1.52.10.2

8

タグ追加

2018/07/15 10:16

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
File without changes

7

2018/07/15 07:19

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -36,7 +36,7 @@
36
36
 
37
37
  特定の操作をしたときに、sub gwを経由してwan2を利用できればよいので、
38
38
 
39
- どんな方法でも良いが、client pcのip routeの変更はしたくない。
39
+ どんな方法でも良いが、client pcのip routeの変更やvpn設定はしたくない。
40
40
 
41
41
  あくまでも、簡易な特定の操作により、wan2が利用できることが望ましいので、
42
42
 
@@ -76,7 +76,7 @@
76
76
 
77
77
 
78
78
 
79
- ・入口と出口のポートを別々にした
79
+ ・入口と出口のnicを別々にした
80
80
 
81
81
  ・カーネルパニック対策にローカルアドレスに対しても、client passを設定した。(https://qiita.com/hirohiro77/items/087c4d9e6b03050f70ad)
82
82
 

6

iptables squidではできないこと

2018/07/15 07:16

投稿

minsuke54
minsuke54

スコア4

test CHANGED
@@ -1 +1 @@
1
- squid+iptables , dante socks等によるプロキシー接続による異なるnic or ネットワークセグメント間のルーティング
1
+ squid + iptables , dante socks等を利用したプロキシー接続による異なるnic or ネットワークセグメント間のルーティングについて
test CHANGED
@@ -52,7 +52,7 @@
52
52
 
53
53
  できなかったので、経緯を詳しく書きます。
54
54
 
55
-
55
+ 使用したツールについての動作や概念を正しく理解している自身はありません。
56
56
 
57
57
 
58
58
 
@@ -190,13 +190,15 @@
190
190
 
191
191
 
192
192
 
193
- http/httpsプロキシだと、client pcがrpi (192.168.0.3:3218)を宛先とする通信しかしないので、squidで処理したあとの通信をどう扱うかが重要です。
193
+ http/httpsプロキシだと、client pcがrpi (192.168.0.3:3218)を宛先とする通信しかしない(client pcからwirsharkで確認)ので、squidで処理したあとの通信をどう扱うかが重要です。
194
+
195
+
194
196
 
195
197
  特に、このサイトの
196
198
 
197
199
  https://www.virment.com/iptables-outline/
198
200
 
199
- 「各チェインがどのパケットを対象とするかを表したイメージ図」参考にすると、
201
+ 「各チェインがどのパケットを対象とするかを表したイメージ図」参考にすると、
200
202
 
201
203
  「squid」というローカルプロセスで処理された通信を、「OUTPUT」「POSTROUTING」で操作する必要があります。
202
204
 
@@ -216,9 +218,17 @@
216
218
 
217
219
 
218
220
 
221
+ とあり、実質的には、「OUTPUT」だけを考えれば良いです。
222
+
219
- とあり、http/https接続では、中継プロキシ-通信先サーバの間の通信は、tcpヘッダまでは中継プロキシのものになるので、squidによる通信か判別不能です。
223
+ そして、http/https接続では、中継プロキシ-通信先サーバの間の通信は、
224
+
220
-
225
+ tcpヘッダまでは中継プロキシのものになるので、
226
+
227
+ iptablesから見た時に、src ip,portによりsquidからの通信かどうか判別不能です。
228
+
229
+
230
+
221
- だから、OUTPUTで変な設定をすると、rpiへのssh accessも含め、全てsubnet Bからやる必要が出る可能性もあります。
231
+ だから、OUTPUTで変な設定をすると、rpiへのssh accessも含め、全てsubnet Bへ転送されて、ssh切断の危険性もあります。
222
232
 
223
233
 
224
234
 
@@ -226,8 +236,14 @@
226
236
 
227
237
 
228
238
 
239
+ 転送先nicとネットワークセグメントをうまく処理するツールがないため、
240
+
229
241
  どうしようもありません。
230
242
 
243
+ 自分でツール開発できるスキルはありません。
244
+
245
+
246
+
231
247
 
232
248
 
233
249
  ```

5

iptables or squidの設定ではどうにもできない

2018/07/15 07:11

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -182,9 +182,51 @@
182
182
 
183
183
  ### 発生している問題・エラーメッセージ(その2)
184
184
 
185
- squid + iptables
185
+ squid + iptablesについて、
186
+
187
+
188
+
186
-
189
+ 次に考えたことは、rpiにsquidを立て、client pcからsquidに対する通信をiptablesによりsubnet Bへルーティングする事です。
190
+
191
+
192
+
187
-
193
+ http/httpsプロキシだと、client pcがrpi (192.168.0.3:3218)を宛先とする通信しかしないので、squidで処理したあとの通信をどう扱うかが重要です。
194
+
195
+ 特に、このサイトの
196
+
197
+ https://www.virment.com/iptables-outline/
198
+
199
+ 「各チェインがどのパケットを対象とするかを表したイメージ図」に参考にすると、
200
+
201
+ 「squid」というローカルプロセスで処理された通信を、「OUTPUT」「POSTROUTING」で操作する必要があります。
202
+
203
+ そして、これらの説明には、
204
+
205
+
206
+
207
+ 引用文:
208
+
209
+
210
+
211
+ OUTPUTとPOSTROUTINGの違い
212
+
213
+
214
+
215
+ OUTPUTはローカルプロセスに処理されて出力されたパケット、すなわち送信元がホストマシンであるパケットを対象としているのに対し、POSTROUTINGは送信元がホストマシンであるとは限りません。例えば、FORWARDによって転送されたパケットも対象となります。
216
+
217
+
218
+
219
+ とあり、http/https接続では、中継プロキシ-通信先サーバの間の通信は、tcpヘッダまでは中継プロキシのものになるので、squidによる通信か判別不能です。
220
+
221
+ だから、OUTPUTで変な設定をすると、rpiへのssh accessも含め、全てsubnet Bからやる必要が出る可能性もあります。
222
+
223
+
224
+
225
+ となると、squidの設定に、squid宛はsubnet Bへ転送させる設定をすることになりますが、tcp_outgoing_addressを設定すると、転送先nicが変更されるのではなく、宛先ipが変更されており、通信先サーバへのアクセスができないです。
226
+
227
+
228
+
229
+ どうしようもありません。
188
230
 
189
231
 
190
232
 

4

2018/07/15 07:05

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -128,9 +128,9 @@
128
128
 
129
129
  ### 試したこと
130
130
 
131
- まず、firefoxのプロキシ設定からsocks_v4 or v5でeth0に設定し
131
+ まず、firefoxのプロキシ設定からsocks_v4 or v5でeth0に設定した。
132
-
132
+
133
- eth0からeth1に流れるように、danted.confを設定した。
133
+ また、上記に記載したdanted.confの設定により、eth0からeth1に転送できるようにした。
134
134
 
135
135
  すると、sub gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
136
136
 
@@ -138,7 +138,9 @@
138
138
 
139
139
  1.1.1.1 (dns無しでhttp/httpsアクセス可能なアドレスで試行) には、
140
140
 
141
- eth0を経由しています。
141
+ subnet Aを経由しています。
142
+
143
+
142
144
 
143
145
  tcpdumpで確認すると、
144
146
 
@@ -148,9 +150,9 @@
148
150
 
149
151
  つまり、danteの設定において、
150
152
 
151
- 宛先がsubnet B以外だと、必ずeth0から出力されるが、送信元がexternalで設定したeth1のアドレスとなり、
153
+ 宛先がsubnet B以外だと、必ずeth0から出力されるが、送信元がexternalで設定したeth1のアドレスとなり、応答パケット受信できないです。
152
-
154
+
153
- interanlとexternalが異なる事は、送信先ネットワークセグメントの違いとはならないようなので、セグメント分けには利用できないです。
155
+ そして、interanlとexternalが異なる事は、送信先ネットワークセグメントの違いとはならないようなので、セグメント分けには利用できないです。
154
156
 
155
157
  また、rpiにssh loginしてpingすると、subnet B宛はeth1を通るが、
156
158
 

3

danteがnic設定が宛先ネットワークセグメントを選択できない事

2018/07/15 06:53

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -72,7 +72,17 @@
72
72
 
73
73
 
74
74
 
75
- ```danted.conf
75
+ danted.conf」の設定
76
+
77
+
78
+
79
+ ・入り口と出口のポートを別々にした
80
+
81
+ ・カーネルパニック対策にローカルアドレスに対しても、client passを設定した。(https://qiita.com/hirohiro77/items/087c4d9e6b03050f70ad)
82
+
83
+
84
+
85
+ ```
76
86
 
77
87
  # $Id: sockd.conf,v 1.52.10.2 2014/09/03 14:49:13 michaels Exp $
78
88
 
@@ -124,15 +134,31 @@
124
134
 
125
135
  すると、sub gw(192.168.1.1)の管理画面にはアクセスできる、つまり、
126
136
 
127
- eth1を経由しているが、
137
+ subnet B(eth1を経由とは書かない)を経由しているが、
128
138
 
129
139
  1.1.1.1 (dns無しでhttp/httpsアクセス可能なアドレスで試行) には、
130
140
 
141
+ eth0を経由しています。
142
+
143
+ tcpdumpで確認すると、
144
+
131
- eth0を経由しています。これらrpi上でのtcpdumpで確認済みす。
145
+ subnet B宛tcpdump -i eth1 で確認できるが、
146
+
147
+ 1.1.1.1宛は、tcpdump -i eth0で、しかも送信元が192.168.1.3(eth1)のアドレスです。
148
+
149
+ つまり、danteの設定において、
150
+
151
+ 宛先がsubnet B以外だと、必ずeth0から出力されるが、送信元がexternalで設定したeth1のアドレスとなり、
152
+
153
+ interanlとexternalが異なる事は、送信先ネットワークセグメントの違いとはならないようなので、セグメント分けには利用できないです。
132
154
 
133
155
  また、rpiにssh loginしてpingすると、subnet B宛はeth1を通るが、
134
156
 
157
+ それ以外はeth0を経由しており、
158
+
135
- それ以外eth0を経由しており、danteの設定以前にosのルーティングテーブルが優先されているようです。danteなら異なるnic間の転送ができると期待しましが。
159
+ 宛先選択には、danteの設定以前にosのルーティングテーブルが優先されているようです。(以下に貼り付け)
160
+
161
+ danteなら異なるnic間の転送ができると期待しましたが。
136
162
 
137
163
 
138
164
 

2

修正

2018/07/15 06:48

投稿

minsuke54
minsuke54

スコア4

test CHANGED
File without changes
test CHANGED
@@ -38,7 +38,9 @@
38
38
 
39
39
  どんな方法でも良いが、client pcのip routeの変更はしたくない。
40
40
 
41
- あくまでも、簡易な特定の操作により、wan2が利用できることが望ましい
41
+ あくまでも、簡易な特定の操作により、wan2が利用できることが望ましいので、
42
+
43
+ 大きな変更はプロキシとなるrpiに対して行うものとする。
42
44
 
43
45
  (プログラムの通信も通すことを考えて)
44
46
 

1

追加

2018/07/15 06:28

投稿

minsuke54
minsuke54

スコア4

test CHANGED
@@ -1 +1 @@
1
- プロキシー接続による異なるnic or ネットワークセグメント間のルーティング
1
+ squid+iptables , dante socks等によるプロキシー接続による異なるnic or ネットワークセグメント間のルーティング
test CHANGED
@@ -1,4 +1,8 @@
1
1
  ### 前提・実現したいこと
2
+
3
+ (書いている途中ですが、何個か試したので、随時追加で投稿します。)
4
+
5
+
2
6
 
3
7
  2つの回線があり、メインの回線とは別に、特定の操作をした時にサブ回線を通るようにしたい。
4
8
 
@@ -30,7 +34,15 @@
30
34
 
31
35
 
32
36
 
33
- 特定の操作をしたときに、sub gwを経由してwan2を利用した
37
+ 特定の操作をしたときに、sub gwを経由してwan2を利用できればよので
38
+
39
+ どんな方法でも良いが、client pcのip routeの変更はしたくない。
40
+
41
+ あくまでも、簡易な特定の操作により、wan2が利用できることが望ましい。
42
+
43
+ (プログラムの通信も通すことを考えて)
44
+
45
+
34
46
 
35
47
  自分が考えている方法は、rpi eth0にプロキシ接続をして、ルーティングされる方法です。
36
48
 
@@ -42,7 +54,7 @@
42
54
 
43
55
 
44
56
 
45
- ### 発生している問題・エラーメッセージ
57
+ ### 発生している問題・エラーメッセージ(その1)
46
58
 
47
59
  danteについて
48
60
 
@@ -114,7 +126,7 @@
114
126
 
115
127
  1.1.1.1 (dns無しでhttp/httpsアクセス可能なアドレスで試行) には、
116
128
 
117
- eth0を経由しています。これらはtcpdumpでも確認済みです。
129
+ eth0を経由しています。これらはrpi上でのtcpdumpでも確認済みです。
118
130
 
119
131
  また、rpiにssh loginしてpingすると、subnet B宛はeth1を通るが、
120
132
 
@@ -138,6 +150,30 @@
138
150
 
139
151
 
140
152
 
153
+ ### 発生している問題・エラーメッセージ(その2)
154
+
155
+ squid + iptables
156
+
157
+
158
+
159
+
160
+
161
+ ```
162
+
163
+ エラーメッセージ
164
+
165
+ ```
166
+
167
+
168
+
169
+ ### 該当のソースコード
170
+
171
+
172
+
173
+
174
+
175
+ ### 試したこと
176
+
141
177
  ### 補足情報(FW/ツールのバージョンなど)
142
178
 
143
179
  dante 1.52.10.2