2022年10月16日日曜日

J:COMのIPv6サービスをルーター(YAMAHA NVR500)で利用

はじめに

 2022年10月ぐらいから、J:COMでIPv6のサービスがリニューアルされて、IPv6ルータを用いれば複数台のPCで利用できるようになりました。YAMAHA NVR500での設定例の情報です。

以下にも書きましたが、フレッツ光のIPv6対応のルーターならば、問題なく・簡単にIPv6を利用できるようになると思います。

J:COMでIPv6が使えるようになって幸せになれる人がどれだけいるか不明ですが....私は自宅(フレッツ光)↔実家(J:COM)間のVPNをPPPoEを経由しないIPv6化して混雑回避できて幸せです。

準備

J:COMのインターネット利用は2022年10月2日以前でしたので、「J:COM技術サポートセンター」に電話をして、IPv6サービスを有効化してもらいました。

設定完了後、自宅のケーブルモデルの再起動が必要です。


設定例

YAMAHA NVR500のIPv4の設定に、以下を追加して家庭内の複数台の機材からIPv6接続できるようになりました。NVR500の設定は、フレッツ光のIPv6接続設定と同じです。

手元の設定から想像するに、フレッツ光のIPv6対応のルーターを用いれば問題なくJ:COMのIPv6サービスも利用できると思われます。(「はじめに」でも書きましたが、フレッツ光系のIPv4のボトルネックのPPPoEをJ:COMでは使っていないため、J:COMのページに記載されているように「インターネット回線速度向上や回線混雑回避の効果はない」ですが)

なお、J:COMのケーブルモデムはKAON KCM3100をブリッジモードで利用しています。ブリッジモードを利用してIPv4のルーティングもYAMAHA NVR500で行っています。理由は、実家と自宅をIPv4でVPN接続するためです。KCM3100をルーターモードで利用した場合に、以下の設定でYAMAHAルータでIPv6を利用できるかは不明です。

2025/2/8追記
その後J:COM側の回線の都合でケーブルモデムはHUMAX HGJ310V4に変わりました。記録し忘れましたが、ブリッジモードで利用しているはずです。

WAN側の設定

lan2ポートをWAN接続しているため、以下のDHCPv6でIPv6アドレスを取得する設定をした。

ipv6 lan2 address dhcp
ipv6 lan2 dhcp service client
ipv6 route default gateway dhcp lan2
ipv6 lan2 secure filter out dynamic 200080 200081 200082 200083 200084 200085
200098 200099
pv6 filter dynamic 200080 * * ftp
ipv6 filter dynamic 200081 * * domain
ipv6 filter dynamic 200082 * * www
ipv6 filter dynamic 200083 * * smtp
ipv6 filter dynamic 200084 * * pop3
ipv6 filter dynamic 200085 * * submission
ipv6 filter dynamic 200098 * * tcp
ipv6 filter dynamic 200099 * * udp

WANアドレスの取得の確認

NVR500にloginして以下の通り確認できました。フレッツ光と同じように/56のprefixのIPv6アドレスが配布されています。

> show status ipv6 dhcp

DHCPv6 status

  LAN1 [server]

  LAN2 [client]
    state: established
    server:
      address: ::
      preference: 0
      prefix: 2405:1200:xxxx:xxxx::/56
      duration: 604800
      T1: 302400
      T2: 529200
      preferred lifetime: 544320
      valid lifetime: 604800
      DNS server[1]: 2001:ff0:2096:20::1
      DNS server[2]: 2400:3800:2fc2:20::1
      Domain name[1]: zaq.ne.jp

LAN側の設定

YAMAHAのフレッツ用の設定と同じように/64のprefixで設定しました。

ipv6 lan1 address ra-prefix@lan2::1/64
ipv6 lan1 address dhcp-prefix@lan2::1/64
ipv6 lan1 rtadv send 1
ipv6 lan1 dhcp service server

LAN側の設定の確認

> show ipv6 address
LAN1 scope-id 1 [up]
 Received:    41363 packets 7449761 octets
 Transmitted: 23579 packets 2995760 octets

 global     2405:1200:xxxx:xxxx::1/64
 link-local fe80::2a0:xxxx:xxxx:xxxx/64
 link-local ff02::1/64
 link-local ff02::2/64
 link-local ff02::1:2/64
 link-local ff02::1:ff00:1/64
 link-local ff02::1:xxxx:xxxx/64

2022年8月12日金曜日

ASAHIネットのメールサーバをFreeBSDサーバから利用

 

作成中

  1.  packageをインストール

    SASL対応のために、ports/pkgのsendmailをインストール

    SSL/TLS通信のために、stunnelをインストール(sendmail.mcの記述でsendmailが直接できるかもしれないが、試していない)

     

    1. stunnelの設定
      1. /usr/local/etc/stunnel/stunnel.conf に以下を追加
    [asahi-net-smtp]
    client = yes
    accept = 127.0.0.1:465
    connect = mail.asahi-net.or.jp:465
    verifyChain = yes
    CApath = /etc/ssl/certs
    checkHost = mail.asahi-net.or.jp
    OCSPaia = yes
      1. /etc/rc.conf に追加
    stunnel_enable="YES"

    /usr/local/etc/rc.d/stunnel start
    1. sendmailの設定
      1. /etc/mail/mailer.conf
    #
    #sendmail       /usr/libexec/sendmail/sendmail
    #mailq          /usr/libexec/sendmail/sendmail
    #newaliases     /usr/libexec/sendmail/sendmail
    #hoststat       /usr/libexec/sendmail/sendmail
    #purgestat      /usr/libexec/sendmail/sendmail
    sendmail        /usr/local/sbin/sendmail
    send-mail       /usr/local/sbin/sendmail
    mailq           /usr/local/sbin/sendmail
    newaliases      /usr/local/sbin/sendmail
    hoststat        /usr/local/sbin/sendmail
    purgestat       /usr/local/sbin/sendmail
    1. sendmail.mcの変更
    FEATURE(authinfo, `hash  -o /etc/mail/authinfo')
    define(`SMART_HOST', `asahinet465:localhost')

    ######################################################################
    ### sendgrid587 Mailer Specification                               ###
    ######################################################################
    Masahinet465,   P=[IPC], F=mDFMuXa8, S=EnvFromSMTP/HdrFromSMTP,
                            R=MasqSMTP, E=\r\n, L=2040, T=DNS/RFC822/SMTP,
                            A=TCP $h 465

    make sendmail.cf
      1. /etc/mail/authinfo
    #
    # makemap hash authinfo.db < authinfo
    #
    AuthInfo:localhost.my.domain "U:ASAHI-NETのID" "P:ASAHI-NETのパスワードすべて小文字で" "M:CRAM-MD5"

    AuthInfo:localhost.my.domain "U:zzz-snp" "P:abcd1234" "M:CRAM-MD5"


    makemap hash authinfo.db < authinfo
    chmod go-rwx authinfo*

    /etc/rc.d/sendmail restart



    authinfoのポイント


    パスワードはすべて小文字



    関連リンク


    2021年2月11日木曜日

    My Peugeot is crashed on Google Pixel3 Android 11

    My Peugeot App on Google Pixel3 Android11 is crashed after adding the body number.

    [2021/3/3] After 2021/2/26 update, My Peugeot App was not crashed.


    --------- beginning of crash

    02-11 20:54:31.802 19959 19959 E AndroidRuntime: FATAL EXCEPTION: main

    02-11 20:54:31.802 19959 19959 E AndroidRuntime: Process: com.psa.mym.mypeugeot, PID: 19959

    02-11 20:54:31.802 19959 19959 E AndroidRuntime: java.lang.ArrayIndexOutOfBoundsException: length=1; index=-1

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.psa.mym.activity.dashboard.DashboardTabFragment.initNoTripsBluetoothTutorial(DashboardTabFragment.java:249)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.psa.mym.activity.dashboard.DashboardTabFragment.showEmpty(DashboardTabFragment.java:235)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.psa.mym.activity.dashboard.DashboardTabFragment.initView(DashboardTabFragment.java:322)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.psa.mym.activity.dashboard.DashboardTabFragment.refresh(DashboardTabFragment.java:445)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.psa.mym.activity.dashboard.DashboardTabFragment.onResume(DashboardTabFragment.java:395)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.Fragment.performResume(Fragment.java:2748)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:373)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1211)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.performPendingDeferredStart(FragmentManager.java:1123)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.startPendingDeferredFragments(FragmentManager.java:1531)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.doPendingDeferredStart(FragmentManager.java:2299)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1869)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.fragment.app.FragmentManager.executePendingTransactions(FragmentManager.java:489)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.commonsware.cwac.pager.v4.ArrayPagerAdapter.finishUpdate(ArrayPagerAdapter.java:156)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.duolingo.open.rtlviewpager.DelegatingPagerAdapter.finishUpdate(DelegatingPagerAdapter.java:61)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1244)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.viewpager.widget.ViewPager.populate(ViewPager.java:1092)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1622)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.duolingo.open.rtlviewpager.RtlViewPager.onMeasure(RtlViewPager.java:211)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:99)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1892)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:831)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1119)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:143)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.android.internal.policy.DecorView.onMeasure(DecorView.java:747)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.View.measure(View.java:25466)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3402)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2246)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2504)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1948)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8177)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:972)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.Choreographer.doCallbacks(Choreographer.java:796)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.Choreographer.doFrame(Choreographer.java:731)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.os.Handler.handleCallback(Handler.java:938)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:99)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:223)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:7660)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)

    02-11 20:54:31.802 19959 19959 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)




    2020年2月14日金曜日

    [FreeBSD]GuestOS hung up with HDD IO error on VirtualBox

    When Guest OS system on VirtualBox runs with heavy disk I/O (e.g. upgrade package, apt-get install, etc),  Guest OS hung up with kernel I/O error(AHCI error etc...). But there is no I/O error on HostOS.

    [SOLUTION]
     enabled Use Host I/O Cache
     

    [Related information] (in Japanese)
    Virtual Box truble shoot: The I/O cache encountered an error

    2019年10月16日水曜日

    [FreeBSD]FreeBSD on Oracle Cloud


    CHANGES
    [2019/10/18] add remove host in known_hosts if can't connect console server
    [2019/10/19] I can run FreeBSD-12.1-RC1(created vmdk on VirtualBox) on Oracle Cloud VM.Standard2.1 with **Launch Mode:EMULATED** (not PARAVIRTUALIZED). Maybe also 12.0-RELEASE.

    Q1 console connection with non-default id filename

    I can use the serial console and VNC console.

    If the user uses non-default identity_filename for ssh authentification, you have to use ssh-agent or specify with "-i" option.

    Example1) use ~/.ssh/id_rsa.oracle, ssh-agent and tcsh
    % eval `ssh-agent -c`
    % ssh-add ~/.ssh/id_rsa.oracle
    
    and use cut&paste Connect with SSH from the oracle cloud console
    % ssh -o ProxyCommand='ssh -W %h:%p -p 443 ocid1.instanceconsoleconnection.oc1.ap-tokyo-1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@instance-console.ap-tokyo-1.oraclecloud.com' ocid1.instance.oc1.ap-tokyo-1.yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
    
    Example2) use ~/.ssh/id_rsa.oracle, -i option(you need define -i twice
    % ssh -i ~/.ssh/id_rsa.oracle -o ProxyCommand='ssh -i ~/.ssh/id_rsa.oracle  -W %h:%p -p 443 ocid1.instanceconsoleconnection.oc1.ap-tokyo-1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@instance-console.ap-tokyo-1.oraclecloud.com' ocid1.instance.oc1.ap-tokyo-1.yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
    
    If you connect ssh connection with below error,
    Permission denied (publickey).
    ssh_exchange_identification: Connection closed by remote host
    
    Remove the oracle cloud host from ~/.ssh/known_hosts.

    
    

    Q2 which Virtual-Image, we can use for FreeBSD[Oct/16/2019].

    I tried FreeBSD-12.0-RELEASE-amd64.vmdk on VM.Standard2.1, I missed with this dmesgs [NG].
    Currently, I'm trying FreeBSD-12.0-RELEASE-amd64.qcow2.
    (Finally, I want to use FreeBSD on VM.Standard.E2.1.Micro as Always Free. But currently out of host capacity at Japan/East(Tokyo) Region. So I use VM.Standard2.1)

    Q3 How to create custom boot image(what is OBJECT STORAGE URL)


    After uploading Virtual Image to Object Storage/Bucket and creating a pre-authenticated request. you can get OBJECT STORAGE URL from Objects->View Object Details(1st one)


    2019年8月30日金曜日

    YouTubeの一週間毎のDreams Come Trueのビデオ再生回数推移グラフ

    毎週月曜日の0時(日本時間)にYouTube APIを使ってDreams Come Trueのコンテンツの再生回数をグラフにしています。当初はこのYouTubeの再生回数からWONDERLAND 2019の決まればと思っていながら時間がなくて結局WONDERLAND 2019が始まってからTop 10/30を計測し始めました。ウラワンの予想でもしようかと思っています。

    DREAMS COME TRUE

    Top 10
    https://www.sanpei.org/YouTube-rank/DCT-graph.html

    Top 30
    https://www.sanpei.org/YouTube-rank/DCT-graph-30.html

    ※ 2019年8月12日分は計測タイミングを月曜日の夕方だったため、通常より多めの再生回数になっています。

    以下参考
    宇多田ヒカル
    Top 10
    https://www.sanpei.org/YouTube-rank/UTADA-graph.html

    Top 30
    https://www.sanpei.org/YouTube-rank/UTADA-graph-30.html

    Perfume
    Top 10
    https://www.sanpei.org/YouTube-rank/PERFUME-graph.html

    Top 30
    https://www.sanpei.org/YouTube-rank/PERFUME-graph-30.html

    Taylor Swift
    Top 10
    https://www.sanpei.org/YouTube-rank/TAYLOR-graph.html

    Top 30
    https://www.sanpei.org/YouTube-rank/TAYLOR-graph-30.html

    ※ 2019/9/1までは、データが一週間分しかないため、宇多田ヒカルとPerfumeのグラフは作成できていません。
    ※ 2019/9/16までは、データが一週間分しかないため、Taylor Swiftのグラフは作成できていません。

    2019年8月29日木曜日

    [2019年夏]T-Mobile 電話番号が無くなったPee-PAID SIMの再有効化(reactivate)


    最初はT-MOBILE.Pay as you goの1week/1GBプラン($10+事務手数料$10)をT-MOBILEのSHOPで契約し、半年後に2GB/1MONTHプラン($10)をMY T-MOBILEから契約しました。その後は日本に帰国したのでWebのMY T-MOBILEで契約解除しました。2GB/1MONTHプランにしたのは、同じ$10で2GBと倍使えるからです(PAY AS YOU GOでは無くて、解約後に電話番号も無効化されたのは解約後に分かった、、、)
    3ヶ月後再度利用しようとMY T-MOBILEで当初の電話番号を入力しても「他でこの番号が使われている」となりMY T-MOBILEからrefillなどができませんでした。

    なぜT-Mobileを使い続けるのか


    現在T-MOBILE系のultra mobileは、オペレータ応答時間はコストダウンのためオフィス時間のみです。一方のT-Mobileは24時間対応してくれます。SIM CARDさえあれば、夜遅く着いた場合などでも手厚くサポートしてくれそうだからです。

    試みてダメだったもの


    1.My T-MOBILEではだめ


    すでに書いたとおり番号が他の人(それも後からオペレータと話してわかったのですが、別の通信会社で再利用されていたようです)に使われて、MY T-MOBILEで紐付け出来ませんでした。

    2.  T-Mobile shopでもだめ


    店員さんにSIM CARD NUMBERを見せて調べてもらったのですが使えない(not avaiableだった)と出てきた。

    3.普通にManage your account: 1-877-778-2106に電話してもだめ


    1. まずは、電話番号を聞かれる
    2. 単にSIM CARD NUMBER伝えても、契約したいのをpay as you goと伝えるとultra mobileのサービス電話に切り替わって、自動応答でACITIVATE CODEを求められてしまいました。このACTIVATE CODEはultra mobileのSIMには印字されていますが、私のSIMはT-MOBILEの物なので記載はありませんでした。
    ultra mobileのオペレータ対応時間ならばここで解決できたかもしれません)

    結局どう解決したか?(REACTIVATEしたか?)


    以上の契約失敗を元に、以下を説明をManage your account: 1-877-778-2106にして、どのようにオペレートしてほしいかをこちらから詳しく説明してREACTIVATEできました(まるでゲームの解き方をオペレータに伝える感じで)。
    1. prepaid simを持っている。4月に2GB /1MONTH契約をしていたが解約した
    2. 今はその時の電話番号がは使えない。新しい番号で良いで、再ACTIVATEしたい(ここはよく言わないと、番号無効だから、そのSIMは使えないとの結論になって終了)。
    3. PAY AS YOU GOをこのSIM CARDで使いたい。SIM CARD NUMBERを伝えるので、Activateしてほしい。
    4. 現在T-MOBILEのpay as you goはultra mobileで提供されているが、私のSIMはT-MOBILEのなのでACTIVATE CODEが無いので、オペレータさんがPAS AS YOU GOを有効にしてほしい。
    以上を伝えたら、再PAY AS YOU GO設定費用$3と1 week /1BG PAY AS YOU GOの$10の合計$13となり、クレジットカード番号などを伝えて、無事Mobile dataプランをT-MOBILEで有効化出来ました。
    $13だと普通にT-MOBILE に行って提携しているultra mobileのpre parid sim買って1week/1GB SIM買うのとおなじ値段ですが、最初に書いたとおり、T-MOBILEの契約をしたかったので、上記の手間をかけました。
    こんなシチュエーションの人は少ないかもしれませんが、何かの参考になればと思いblog化しました。